# 小程序管理
小程序管理主要介绍操作小程序的API,包括:打开小程序,关闭小程序,删除小程序、小程序生命周期等
# 1 小程序生命周期
示例
MopSdk.setAppletLifecycleCallback(
(ret) => {
console.log('onInitComplete', ret)
},
(ret) => {
console.log('onOpen', ret)
},
(ret) => {
console.log('onOpenFailure', ret)
},
(ret) => {
console.log('onInActive', ret)
},
(ret) => {
console.log('onActive', ret)
},
(ret) => {
console.log('onClose', ret)
},
(ret) => {
console.log('onDestroy', ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
onInitComplete | Function | 小程序初始化完成,首页加载出来的事件 |
onOpen | Function | 小程序打开完成的事件 |
onOpenFailure | Function | 小程序出错的事件 |
onInActive | Function | 小程序进入非活跃状态的事件 |
onActive | Function | 小程序进入活跃状态的事件 |
onClose | Function | 小程序关闭完成的事件 |
onDestroy | Function | 小程序被销毁的事件 |
# 2 普通打开小程序
打开小程序时,会先判断本地是否有缓存的小程序,如果没有,则会自动从远程服务器上下载小程序,然后打开;如果有缓存的小程序,则会先打开本地小程序,然后再校验服务器端是否有新版本。
如果有新版本,则下载新版小程序,下次打开时,就会使用新版小程序;如果没有新版本,则什么也不做。
示例
const apiServer = 'https://api.finclip.com'
const appId = '5eec56a41464cc0001852e9a'
MopSdk.openApplet({apiServer,appId},
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
},
(ret) => {
console.log('onProcess',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
options | Object | 打开小程序信息 |
onSuccess | Function | 打开小程序成功回调 |
onFail | Function | 打开小程序失败回调 |
onProgress | Function | 打开小程序进度回调 |
options配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序id,必填 |
apiServer | String | 小程序所属服务器,必填 |
appTitle | String | 小程序名称,非必填 |
appAvatar | String | 小程序图标的网络地址,非必填 |
startParams | Object | 小程序启动参数,包含path、query,非必填 |
schemes | Array[String] | 自定义的scheme数组 |
hideMiniProgramCloseButton | boolean | 是否隐藏小程序页面胶囊里的关闭按钮,默认为false |
hideMiniProgramMoreButton | boolean | 是否隐藏小程序页面胶囊里的更多按钮,默认为false |
sequence | int | 小程序索引, 非必填 |
from | int | 来源,数据上报时记录到apm事件中 |
anim | String | 打开小程序动画,安卓默认RightToLeft,IOS默认BottomToTop,可选值BottomToTop、LeftToRight、TopToBottom、RightToLeft |
processMode | String | 进程模式。枚举类型,默认为 MULTI,即多进程模式,可选值MULTI、SINGLE (仅安卓) |
taskMode | String | 任务参数。枚举类型,默认为 MULTI,即多任务模式,可选值MULTI、SINGLE (仅安卓) |
reLaunchMode | String | 小程序热启动时执行reLaunch的模式。枚举类型,默认为PARAMS_EXIST,即只要有启动参数(启动参数不为null也不为空字符串,不管启动参数是否和上一次的启动参数相同),就执行reLaunch | |
startParams配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
path | String | 小程序页面路径 |
query | String | 小程序参数,格式:key=value&key2=value2 |
# 3 二维码打开小程序
这种情况流程一般会复杂一些,需要先扫描FinClip小程序开放平台上的二维码,得到二维码里的内容,然后使用二维码内容调用该接口打开小程序。
示例
const qrCode = '' //二维码
MopSdk.openAppletByQrcode({qrCode},
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
},
(ret) => {
console.log('onProcess',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
options | Object | 打开小程序信息 |
onSuccess | Function | 打开小程序成功回调 |
onFail | Function | 打开小程序失败回调 |
onProgress | Function | 打开小程序进度回调 |
options配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
qrCode | String | 二维码内容,必填 |
from | int | 来源,数据上报时记录到apm事件中 |
anim | String | 打开小程序动画,安卓默认RightToLeft,IOS默认BottomToTop,可选值BottomToTop、LeftToRight、TopToBottom、RightToLeft |
appTitle | String | 小程序名称,非必填(仅安卓) |
appAvatar | String | 小程序图标的网络地址,非必填 (仅安卓) |
processMode | String | 进程模式。枚举类型,默认为 MULTI,即多进程模式,可选值MULTI、SINGLE (仅安卓) |
taskMode | String | 任务参数。枚举类型,默认为 MULTI,即多任务模式,可选值MULTI、SINGLE (仅安卓) |
schemes | Array[String] | 自定义的scheme数组 (仅安卓) |
hideMiniProgramCloseButton | boolean | 是否隐藏小程序页面胶囊里的关闭按钮,默认为false (仅安卓) |
hideMiniProgramMoreButton | boolean | 是否隐藏小程序页面胶囊里的更多按钮,默认为false (仅安卓) |
reLaunchMode | String | 小程序热启动时执行reLaunch的模式。枚举类型,默认为PARAMS_EXIST,即只要有启动参数(启动参数不为null也不为空字符串,不管启动参数是否和上一次的启动参数相同),就执行reLaunch | |
# 4 搜索小程序
示例
const apiServer = ''
const text = ''
MopSdk.searchApplets({apiServer,text},
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
},
(ret) => {
console.log('onProcess',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
options | Object | 搜索小程序信息 |
onSuccess | Function | 搜索小程序成功回调 |
onFail | Function | 搜索小程序失败回调 |
onProgress | Function | 搜索小程序进度回调 |
options配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
apiServer | String | 服务器地址,必填 |
text | String | 搜索小程序内容,必填 |
成功返回值
名称 | 类型 | 配置描述 |
---|---|---|
list | Array[AppletInfo] | 搜索到的小程序集合 |
total | int | 搜索到的小程序数量 |
AppletInfo信息
名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序ID |
appName | String | 小程序名称 |
desc | String | 小程序描述信息 |
highLights | Array[HighLight] | 高亮字体 |
organName | String | 企业名称 |
pageUrl | String | 小程序搜索到的页面路径 |
showText | String | 展示内容 |
HighLight信息
名称 | 类型 | 配置描述 |
---|---|---|
key | String | 高亮字体的key |
value | String | 高亮字体的value |
# 5 批量下载小程序
示例
const apiServer = ''
const appIds = []
MopSdk.downloadApplets({apiServer,appIds},
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
options | Object | 批量下载小程序信息 |
onSuccess | Function | 批量下载小程序成功回调 |
onFail | Function | 批量下载小程序失败回调 |
options配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
apiServer | String | 服务器地址,必填 |
appIds | Array[String] | 需要下载的小程序id数组,必填 |
isBatchDownloadApplets | boolean | 获取小程序详情后是否下载这些小程序,默认false,非必填 |
成功返回值
名称 | 类型 | 配置描述 |
---|---|---|
-- | Array[AppletDownLoadInfo] | 下载小程序集合 |
AppletDownLoadInfo信息
名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序ID |
success | boolean | 小程序是否获取成功 |
needUpdate | boolean | 是否需要更新本地小程序 true:小程序来源于网络 ; false:小程序本地已经是最新版无需下载 (此字段只有 success 为 true 的时候才有意义) |
# 6 获取绑定小程序对象信息
示例
const options = {
apiServer: '',
appClass: '',
appStatus: 0,
containForbidden:: false,
pageNo: 1,
pageSize: 20
}
MopSdk.getBindApplets(options,
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
options | Object | 批量下载小程序信息 |
onSuccess | Function | 批量下载小程序成功回调 |
onFail | Function | 批量下载小程序失败回调 |
options配置项
配置名称 | 类型 | 配置描述 |
---|---|---|
apiServer | String | 小程序所属服务器,必填 |
appClass | String | 小程序的分类,默认为'' |
appStatus | init | 小程序状态类型,枚举值。0:所有;1:已上架的;2:未上架的;3:已下架的 |
containForbiddenApp | boolean | 查询结果是否包含被禁用的小程序,默认为false |
pageNo | init | 分页查询的页码,默认为1 |
pageSize | int | 分页的大小,默认为20 |
# 6 获取小程序页面截图
示例
const appId = ''
const snapShotWholePage = false
MopSdk.captureAppletPicture(
appId,
snapShotWholePage
(ret) => {
console.log('onSuccess',ret)
},
(ret) => {
console.log('onFail',ret)
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序ID |
snapShotWholePage | boolean | 是否截取完整小程序页面(包括可视范围之外) |
onSuccess | Function | 截图小程序成功回调 |
onFail | Function | 截图小程序失败回调 |
成功返回值
名称 | 类型 | 配置描述 |
---|---|---|
bitmap | String | 截图的base64值 |
# 7 将小程序移至前端 (安卓)
示例
const appId = ''
MopSdk.moveMiniProgramToFront(appId)
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序ID |
# 8 将APP移至前端
示例
MopSdk.moveAppToFront()
参数
配置名称 | 类型 | 配置描述 |
---|
# 9 获取当前小程序APPID信息
示例
MopSdk.currentAppletId((appId) => {
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
onCallback | Function | 获取小程序APPID成功回调 |
成功返回值
名称 | 类型 | 配置描述 |
---|
# 10 获取当前小程序信息
示例
MopSdk.currentApplet((ret) => {
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
onCallback | Function | 获取小程序成功回调 |
成功返回值
名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序id |
userId | String | 小程序开发者id |
appAvatar | String | 小程序头像 |
appTitle | String | 小程序标题 |
appDescription | String | 小程序描述 |
appVersion | String | 小程序版本号 |
appVersionDescription | String | 小程序版本说明 |
sequence | int | 小程序序列 |
isGrayVersion | boolean | 是否是灰度版本 |
appThumbnail | String | 小程序缩略图 |
groupId | String | 所属组织ID |
groupName | String | 所属组织名称 |
appDescription | String | 小程序描述 |
startParams | Object | 启动参数 |
cryptInfo | String | 小程序加密信息 |
# 11 获取使用过的指定小程序信息
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序APPID |
onCallback | Function | 获取小程序信息成功回调 |
示例
const
MopSdk.getUsedApplet(appId,(FinApplet) => {
})
# 12 获取使用过的小程序列表
示例
const
MopSdk.getUsedApplets((Array[FinApplet]) => {
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
onCallback | Function | 获取小程序信息成功回调 |
# 13 判断是否是使用过的小程序
示例
const
MopSdk.isUsedApplet(appId,(isUsed) => {
})
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序APPID |
onCallback | Function | 获取小程序信息成功回调 |
# 14 关闭小程序,小程序会在内存保留
示例
MopSdk.closeApplet(appId);
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序APPID |
# 15 关闭所有小程序,小程序会在内存保留
示例
MopSdk.closeApplets()
参数
配置名称 | 类型 | 配置描述 |
---|
# 16 结束小程序,从内存移除
示例
MopSdk.finishRunningApplet(appId);
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序APPID |
# 17 结束所有小程序,从内存移除,
示例
MopSdk.finishRunningApplets();
参数
配置名称 | 类型 | 配置描述 |
---|
# 18 清除小程序(从本地缓存中移除)
示例
MopSdk.clearApplet(appId);
参数
配置名称 | 类型 | 配置描述 |
---|---|---|
appId | String | 小程序APPID |
# 19 清除所有小程序(从本地缓存中移除)
示例
MopSdk.clearApplets()
参数
配置名称 | 类型 | 配置描述 |
---|