跳转
跳转其他小程序需要先获取需要跳转的小程序的AppID
例如:以iOS为例,跳转到小程序“快递100”
打开小程序后点击右上角胶囊设置键(三个点)选择“关于快递100”
打开“关于快递100”页面后右上角胶囊设置键选择“更多资料”,打开页面获取AppID
获取AppID后需要在App.json中配置
json配置
当小程序需要使用 wx.navigateToMiniProgram 接口跳转到其他小程序时,需要先在配置文件中声明需要跳转的小程序 appId 列表,最多允许填写 10 个。
App.json
"navigateToMiniProgramAppIdList": [
"wx3efb95b9c5579418",
"wxc1039e003593f9b4",
"wxc75cac912af33647",
"wx88bbae21474301ed",
"wxd101b6b8f64db085",
"wxd7c5b7d77ff1b238",
"wxefe8997276c7a7d4",
"wxbdfee33ea394a980",
"wx8b3a98563fc40251"
]
使用限制
需要用户触发跳转
从 2.3.0 版本开始,若用户未点击小程序页面任意位置,则开发者将无法调用此接口自动跳转至其他小程序。
需要用户确认跳转
从 2.3.0 版本开始,在跳转至其他小程序前,将统一增加弹窗,询问是否跳转,用户确认后才可以跳转其他小程序。如果用户点击取消,则回调 fail cancel。
每个小程序可跳转的其他小程序数量限制为不超过 10 个
从 2.4.0 版本以及指定日期(具体待定)开始,开发者提交新版小程序代码时,如使用了跳转其他小程序功能,则需要在代码配置中声明将要跳转的小程序名单,限定不超过 10 个,否则将无法通过审核。该名单可在发布新版时更新,不支持动态修改。配置方法详见 配置。调用此接口时,所跳转的 appId 必须在配置列表中,否则回调 fail appId “${appId}” is not in navigateToMiniProgramAppIdList。
关于调试
- 在开发者工具上调用此 API 并不会真实的跳转到另外的小程序,但是开发者工具会校验本次调用跳转是否成功。详情
- 开发者工具上支持被跳转的小程序处理接收参数的调试。详情
跳转API
wx.navigateToMiniProgram(Object object)
打开另一个小程序
参数 object
object.envVersion 的合法值
示例
wx.navigateToMiniProgram({
appId: '*********',
path: 'page/index/index?id=123',
extraData: {
foo: 'bar'
},
envVersion: 'develop',
success(res) {
// 打开成功
}
})
wx.navigateBackMiniProgram(Object object)
返回到上一个小程序。只有在当前小程序是被其他小程序打开时可以调用成功
注意:微信客户端 iOS 6.5.9,Android 6.5.10 及以上版本支持
参数 Object object
示例代码
wx.navigateBackMiniProgram({
extraData: {
foo: 'bar'
},
success(res) {
// 返回成功
}
})