【2025年1月2日】关于腾讯云小程序平台更名为腾讯云超级应用服务的公告
控制台更新动态
Android SDK 更新动态
iOS SDK 更新动态
Flutter 更新动态
IDE 更新动态
基础库更新动态
/*** 打开小程序时是否强制检查更新(冷启动时有效),false:优先使用本地缓存,同时异步获取最新数据;true:待网络返回后才打开小程序*/public boolean isForceUpdate = false;/*** 入口地址,支持添加参数:path?key=value&key1=value1*/public String entryPath;/*** 接收小程序启动过程中错误信息*/public ResultReceiver resultReceiver;/*** 小程序启动参数*/public String params;/*** 设置打开小程序时使用的任务模式** false: 多任务模式,true: 为单任务模式*/public boolean isSingleTask;
/*** 成功*/public static final int CODE_OK = 0;//////////////////////////////服务端错误//////////////////////////////////public static final int C_SERVER = -11000;/*** shark网络错误*/public static final int C_SERVER_SHARK_ERROR = -11001;/*** 服务端返回code错误*/public static final int C_SERVER_RET_CODE_ERROR = -11002;/*** 服务端返回response为空*/public static final int C_SERVER_RESPONSE_NULL = -11003;/*** 服务端返回小程序更新类型有问题*/public static final int C_SERVER_UPDATE_TYPE_ERROR = -11004;/*** 服务端返回数据解析异常*/public static final int C_SERVER_PARSE_DATA_ERROR = -11005;/*** 小程序不存在或已下架*/public static final int C_SERVER_TAKE_OFF = -11006;/*** 达到月活上限*/public static final int C_SERVER_MAU_LIMIT = -11007;/*** 资源限额*/public static final int C_SERVER_RES_LIMIT = -11008;/*** 单个接口请求频率过高*/public static final int C_SERVER_FREQ_LIMIT_API = -11011;/*** 总请求频率过高*/public static final int C_SERVER_FREQ_LIMIT_TOTAL = -11012;/*** 二维码过期*/public static final int C_SERVER_SCAN_CODE_EXPIRED = -11013;//////////////////////////////客户端错误//////////////////////////////////public static final int C_CLIENT = -12000;/*** shark实例空*/public static final int C_CLIENT_SHARK_IS_NULL = -12001;/*** 预览小程序需要先登录*/public static final int C_CLIENT_NEED_LOGIN_PREVIEW_APP = -12002;/*** 数据解析异常*/public static final int C_CLIENT_JSON_EXCEPTION = -12003;/*** 小程序信息缺失*/public static final int C_CLIENT_MINI_APP_INFO_ERROR = -12005;/*** 扫码错误*/public static final int C_CLIENT_QRCODE_ERROR = -12006;/*** 非小程序二维码*/public static final int C_CLIENT_QRCODE_INVALIDATE = -12007;/*** appid空*/public static final int C_CLIENT_APPID_EMPTY = -12008;/*** businessId null*/public static final int C_CLIENT_QRCODE_BUSINESSID_NULL = -12009;/*** 小程序启动异常*/public static final int C_CLIENT_START_MINI_APP_THROWABLE = -12010;/*** json解析异常*/public static final int C_CLIENT_JSON_ERROR = -12011;/*** 小程序下载失败*/public static final int C_CLIENT_MINI_APP_DOWNLOAD_FAIL = -12012;/*** 小程序解析失败*/public static final int C_CLIENT_MINI_APP_PARSE_FAIL = -12013;/*** 未集成mbengine,不支持游戏*/public static final int C_CLIENT_MINI_GAME_MBENGINE_LOAD_FAIL = -12100;/*** 服务端下发关闭小游戏*/public static final int C_CLIENT_MINI_GAME_DISABLED = -12101;/*** 小游戏基础库加载失败*/public static final int C_CLIENT_MINI_APP_BASE_LIB_LOAD_FAIL = -12103;/*** game.js或者指定入口文件不存在*/public static final int C_CLIENT_MINI_GAME_ENTRY_ERROR = -12104;
/*** 正式版小程序*/public static final int TYPE_ONLINE = MiniSDKConst.ONLINE;/*** 开发版小程序*/public static final int TYPE_DEVELOP = MiniSDKConst.DEVELOP;/*** 预览版小程序*/public static final int TYPE_PREVIEW = MiniSDKConst.PREVIEW;/*** 小程序id*/public String appId;/*** 小程序版本类型(正式、预览、开发版)*/public int appVerType;/*** 小程序版本*/public String version;/*** 小程序名*/public String name;/*** 小程序图标*/public String iconUrl;/*** 小程序简介*/public String appIntro;/*** 开发者企业名称*/public String appDeveloper;/*** 时间戳*/public long time;/*** 小程序引擎类型:* MiniEngineType.MiniApp:小程序* MiniEngineType.MiniGame: 小游戏*/public MiniEngineType engineType;
/*** 小程序主入口,「最近使用」列表*/public static final int LAUNCH_SCENE_MAIN_ENTRY = 1001;/*** 扫码打开*/public static final int LAUNCH_SCENE_QR_CODE_FROM_SCAN = 1011;/*** 搜索打开*/public static final int LAUNCH_SCENE_SEARCH = 2005;
/*** 搜索关键字,为空时搜索全部小程序*/public String keyWord = "";/*** 指定一级分类*/public String firstLevelCate;/*** 指定二级分类*/public String secondaryLevelCate;/*** 指定引擎类型:* 1. MiniEngineType.MiniApp: 只搜索小程序* 2. MiniEngineType.MiniGame: 只搜索小游戏* 3. 不指定该字段:表示搜索小程序和小游戏*/public MiniEngineType engineType;/*** 页码,从1开始,为 0 表示不分页 (2.2.4以上版本支持)*/public int pageIndex;/*** 页大小,为 0 表示不分页 (2.2.4以上版本支持)*/public int pageSize;
public class SearchResult {/*** 本次搜索匹配到的小程序总数*/public int total;/*** 本次搜索返回的小程序列表,如果指定分页参数,则只返回当前分页列表*/public List<MiniApp> miniAppList;}
/*** 分享来源,ShareSource 中的值*/public int shareSource;/*** 分享目标, ShareTarget 中的值*/public int shareTarget;/*** 分享面板设置的 ID,用于区分分享渠道*/public int shareItemId;/*** 分享标题*/public String title;/*** 分享摘要*/public String summary;/*** 分享图片的路径。为本地图片路径或者网络图片路径*/public String sharePicPath;/*** 是否为本地图片。如果为 True,则 sharePicPath 为本地图片的路径;否则,sharePicPath 为网络图片的路径*/public boolean isLocalPic;/*** 从服务端获取的字段:分享链接*/public String targetUrl;/*** 小程序包信息*/protected MiniAppInfo miniAppInfo;
public static class ShareSource {public static final int INNER_BUTTON = 11; // 来自小程序|小游戏的内部按钮public static final int MORE_BUTTON = 12; // 来自胶囊按钮的更多选项}
public static class ShareTarget {public static final int WECHAT_FRIEND = 3;//转发到微信好友public static final int WECHAT_MOMENTS = 4;//转发到微信朋友圈}
public static class ShareResult {public static final int SUCCESS = 0;// 分享成功public static final int FAIL = 1;// 分享失败public static final int CANCEL = 2;// 分享取消}
public class MiniStartLinkOptions {/*** 打开小程序时是否强制检查更新(冷启动时有效),false:优先使用本地缓存,同时异步获取最新数据;true:待网络返回后才打开小程序*/public boolean isForceUpdate = false;/*** 入口地址*/public String entryPath;/*** 接收小程序启动过程中错误信息*/public ResultReceiver resultReceiver;/*** 小程序启动参数*/public String params;}
/*** assets中配置文件名称*/private String configAssetName;/*** 自定义配置文件路径*/private String configFilePath;/*** 配置文件内容*/private String configJsonStr;/*** sdk日志开关*/private boolean debug;/*** 设置外部shark实例*/private IShark shark;/*** 加载配置文件时,是否校验配置文件中的包名*/private boolean verifyPkg;/*** 是否使用x5内核*/private boolean isUserX5Core = true;/** * 是否强制使用内核基础库 */ private boolean forceUseBaseLibInAsset;/*** 预置离线包 assets 路径*/private String assetPathOfPresets;/*** 禁用调试功能*/private boolean disableMiniDebug = false;
/*** 返回小程序信息*/MiniAppInfo getMiniAppInfo();
public String appId;//小程序对应 appidpublic String name;//小程序的名称public String iconUrl;//小程序图标 urlpublic String version;//小程序版本号public int verType;//小程序类型:开发、预览、正式版
public interface IpcCallback {/*** 进程通信回调* @param isSucc 是否成功调用* @param response 返回数据*/void result(boolean isSucc, Bundle response);}
public Context context;//数据public Bundle data;//返回回调public IpcCallback callback;
//小程序activitypublic WeakReference<Activity> activityRef;//事件名public String event;//事件参数public String jsonParams;
/** * 小程序启动 */ int STATE_START = 1; /** * 小程序切换到前台 */ int STATE_FOREGROUND = 2; /** * 胶囊关闭小程序 */ int STATE_CLOSE = 3; /** * 小程序切换到后台 */ int STATE_BACKGROUND = 4; /** * 小程序销毁 */ int STATE_DESTROY = 5;
/** * 小程序信息 */ public MiniApp miniApp; /** * 是否热启动 */ public boolean isHotStart;
/*** 小程序 appId*/public String appId;/** * 是否下载小程序包 */ public boolean isDownload;
/*** 下载成功回调** @param downloadInfo*/void onFinish(DownloadInfo downloadInfo);/*** 下载失败回调** @param downloadInfo*/void onError(DownloadInfo downloadInfo);
//下载IOEXCEPTION和IllegalAccessException异常public static final int CODE_DOWNLOAD_IOEXCEPTION = -100001;//下载EXCEPTION异常public static final int CODE_DOWNLOAD_EXCEPTION = -100002;//没有网public static final int CODE_NO_NETWORK = -100003;//下载参数错误public static final int CODE_PARAM_ERROR = -100004;//下载目录创建失败public static final int CODE_DOWNLOAD_DIR_CREATE_FAIL = -100005;//小程序包解析失败public static final int CODE_MINI_APP_PARSE_FAIL = -12013;/** * 小程序 id */ private String appId; /** * 错误 code */ private int errCode; /** * 错误msg */ private String message;
/** * 获取wxfile绝对路径 * @param wxFilePath * @return */ String getAbsolutePath(String wxFilePath); /** * 将绝对路径转为 wxfile * @param path * @return */ String getWxFilePath(String path); /** * 获取临时目录 * @param suffix * @return */ String getTmpPath(String suffix);
/*** 小程序上下文*/protected IMiniAppContext mMiniAppContext;/*** 小程序信息*/protected MiniAppInfo mMiniAppInfo;/*** 小程序包信息*/protected ApkgInfo mApkgInfo;
public enum MiniEngineType {MiniApp, // 小程序MiniGame // 小游戏}
interface IChooseMediaListener {/*** @param result 是否成功选择媒体文件,true 表示选择成功* @param uris 选择的媒体文件列表,如果选择失败,则为空列表*/void onResult(boolean result, ArrayList<Uri> uris);}
public class ChooseMediaOptions {public static final int SIZE_TYPE_ORIGINAL = 0x01; // 原图public static final int SIZE_TYPE_COMPRESS = 0x02; // 压缩public static final int MEDIA_TYPE_IMAGE = 0; // 图片public static final int MEDIA_TYPE_VIDEO = 1; // 视频public static final int MEDIA_TYPE_MIX = 2; // 混合模式public static final int CAMERA_TYPE_FRONT = 0; // 前置摄像头public static final int CAMERA_TYPE_BACK = 1; // 后置摄像头public int maxCount = 1; // 多文件选择时,最多选择文件数public int sizeType = SIZE_TYPE_ORIGINAL; // 原图或者压缩,可以通过 SIZE_TYPE_ORIGINAL|SIZE_TYPE_COMPRESS 表示同时支持二者,由用户选择public int mediaType = MEDIA_TYPE_IMAGE; // 图片、视频或者混合模式public int duration; // 拍摄视频最长拍摄时间,单位秒。时间范围为 3s 至 60s 之间。不限制相册。public int camera; // 使用前置或后置摄像头,仅在 chooseMediaFromCamera 时生效public Uri cameraOutput; // 相机模式指定输出文件路径,非空表示SDK内部已创建,为空则需代理自行处理}
//更多面板菜单项信息public class MoreItem {public static final int MIN_EXT_ITEM_ID = 100; // The minimum extended id of MoreItempublic static final int MAX_EXT_ITEM_ID = 200; // The maximum extended id of MoreItemprivate static final int FIRST_BUILTIN_ITEM = 1;public static final int SHARE_QQ = FIRST_BUILTIN_ITEM;public static final int SHARE_QZONE = FIRST_BUILTIN_ITEM + 1;public static final int SHARE_WX_FRIEND = FIRST_BUILTIN_ITEM + 2;public static final int SHARE_WX_MOMENT = FIRST_BUILTIN_ITEM + 3;public static final int ABOUT = FIRST_BUILTIN_ITEM + 4;public static final int COMPLAINT = FIRST_BUILTIN_ITEM + 5;public static final int DEBUG = FIRST_BUILTIN_ITEM + 6;public static final int MONITOR = FIRST_BUILTIN_ITEM + 7;public static final int RESTART = FIRST_BUILTIN_ITEM + 8;public static final int FAVORITE = FIRST_BUILTIN_ITEM + 9;public static final int SHORTCUT = FIRST_BUILTIN_ITEM + 10;public static final int QQ_FAVORITE = FIRST_BUILTIN_ITEM + 11;public static final int EXPORT_LOG = FIRST_BUILTIN_ITEM + 12;public static final int SETTING = FIRST_BUILTIN_ITEM + 13;public static final int COPY_LINK = FIRST_BUILTIN_ITEM + 14;public int id; // Item Idpublic boolean visible; // 是否可见public int drawable; // Item drawable 资源 idpublic String drawableUri; //Item drawable uripublic String text; // Item 标题public String contentDescription; // Item 无障碍描述public boolean isCustomShare; //是否自定义分享public String shareKey; //自定义分享的 key,与小程序端自定义设置保持一致public MoreItemClickListener onClickListener; // 点击事件}
public class MoreItem {public interface MoreItemClickListener {/*** 点击监听器** @param context 小程序上下文* @param item 被点击的菜单项*/void onClick(IMiniAppContext context, MoreItem item);}}
public class MoreItemList extends ArrayList<MoreItem> {/*** 添加分享按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addAbout(String text, int drawableResId);public Builder addAbout(String text, int drawableResId, String contentDescription);public Builder addAbout(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加复制链接按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addCopyLink(String text, int drawableResId);public Builder addCopyLink(String text, int drawableResId, String contentDescription);public Builder addCopyLink(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加投诉按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addComplaint(String text, int drawableResId);public Builder addComplaint(String text, int drawableResId, String contentDescription);public Builder addComplaint(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加调试按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addDebug(String text, int drawableResId);public Builder addDebug(String text, int drawableResId, String contentDescription);public Builder addDebug(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加重启按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addRestart(String text, int drawableResId);public Builder addRestart(String text, int drawableResId, String contentDescription);public Builder addRestart(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加创建快捷方式按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addShortcut(String text, int drawableResId);public Builder addShortcut(String text, int drawableResId, String contentDescription);public Builder addShortcut(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加设置按钮* @param text 按钮文案* @param drawableResId 按钮图标* @param contentDescription 无障碍描述* @param listener 点击监听* @return*/public Builder addSetting(String text, int drawableResId);public Builder addSetting(String text, int drawableResId, String contentDescription);public Builder addSetting(String text, int drawableResId, String contentDescription, MoreItem.MoreItemClickListener listener);/*** 添加自定义按钮* @param moreItem* @return*/public Builder addMoreItem(MoreItem moreItem);}
public class PermissionInfo {public String id; //权限id,对应 scopNamepublic String name; //权限标题public String description;//权限描述public String rejectDescription; //拒绝权限描述public String settingPageTitle; //设置页面展示的权限标题}
public class MiniAuthState {//未获取授权public static final int AUTH_FLAG_NONE = 0x00000001;//已授权public static final int AUTH_FLAG_GRANTED = 0x00000002;//已拒绝public static final int AUTH_FLAG_REJECTED = 0x00000004;/*** 权限id*/public String scopeName;/*** 权限授权状态*/public int authFlag;}
public class MiniAuthInfo {// 小程序信息public MiniApp miniApp;// 小程序 idpublic String appId;// 小程序名称public String miniAppName;// 小程序图标public String miniIconUrl;// 权限名称public String scopeName;// 授权弹窗标题public String authTitle;// 授权弹窗描述public String authDesc;// 手机号、邮箱等敏感信息的掩码值,如:135****888public String maskValue;// 拒绝回调(必须设置)public View.OnClickListener refuseListener;// 授权回调(必须设置)public View.OnClickListener grantListener;}
public class DialogInfo {private String title; //标题private String message; //消息private String positiveButtonText; //肯定按钮标题private String negativeButtonText; //否定按钮标题private boolean cancelable = true; //是否可取消private Integer positiveButtonColor; //肯定按钮标题颜色private Integer negativeButtonColor; //否定按钮标题颜色private DialogInterface.OnClickListener positiveButtonListener; //肯定按钮点击监听private DialogInterface.OnClickListener negativeButtonListener; //否定按钮点击监听private DialogInterface.OnDismissListener dismissListener; // 对话框消失监听private DialogInterface.OnCancelListener cancelListener; //取消监听}
public class ActionSheetInfo {private String title; // 标题private List<ActionSheetItem> items; // 选项列表private boolean cancelable = true; // 是否可取消private String cancelText; // 取消按钮文本private OnItemClickListener itemClickListener; // 选项点击监听器private DialogInterface.OnCancelListener cancelListener; // 取消监听器}
public class ActionSheetItem {private String text; // 文本内容private Integer textColor; // 文本颜色private Drawable iconLeft; // 左侧图标private Drawable iconTop; // 顶部图标private Drawable iconRight; // 右侧图标private Drawable iconBottom; // 底部图标}
public interface OnItemClickListener {/*** 选项点击事件* @param which 被点击的选项索引*/void onClick(int which);}
文档反馈