更新时间:2022-12-23 16:51:17贡献者收藏我的文档设置返回文档支付宝小程序不限制来自 h5 页面或者其它 app 的跳转,只要 h5 页面或者其它 app 支持外跳小程序即可跳转,本文介绍通过 scheme 链接方式实现跳转。 如需跳转到未上线/体验版小程序,可查看 联调设置。拼接方式url 格式plain text复制代码91alipays://platformapi/startapp?appid=[appid]&page=[page]&query=[query]参数描述示例appid要跳转的目标小程序 appid。20170713077xxxxxpage要跳转到目标小程序的具体 page 页面,该值等于 app.json 里面的配置值;如果不带 page 字段,默认跳转到小程序凯发k8官方网娱乐官方首页。 路径中可以在 ?后面附加跳转后的页面参数。页面参数必须进行 urlencode 编码,否则只能获取到第一个页面参数。urlencode 编码前:pages/index/index?key1=1&key2=2 urlencode 编码后:pages/index/index?key1=1&key2=2query表示从外部 app 携带的参数透传到目标小程序,如果不需要携带参数给小程序,可以不带该参数。 query:启动参数,内容按照格式为参数名=参数值&参数名=参数值 注意: query 携带的启动参数必须进行 urlencode 编码否则只能获取到第一个参数。urlencode 编码前:key1=value1&key2=value2 urlencode 编码后:key1=value1&key2=value2scheme转换成https链接唤起小程序需要把 scheme 当作参数进行 urlencode 编码后,拼接在 https://ds.alipay.com/?scheme= 后。拼接过程第一步、填写贵司正确的应用appid和page页面路径,完成如下: alipays://platformapi/startapp?appid=202100216xxxxxxx&page=pages/index/index 携带启动参数场景,先单独对 query 携带的启动参数进行 urlencode 编码,完成如下: urlencode 编码前: alipays://platformapi/startapp?appid=202100216xxxxxxx&page=pages/index/index&query=key1=value1&key2=value2 urlencode 编码后: alipays://platformapi/startapp?appid=202100216xxxxxxx&page=pages/index/index&query=key1=value1&key2=value2 第二步、对 第一步 拼接完成的链接进行整体 urlencode 编码并拼接在 后(携带启动参数场景),完成完整拼接如下: https://ds.alipay.com/?scheme=alipays://platformapi/startapp?appid=202100216xxxxxxx&page=pages/index/index&query=key1%3dvalue1%26key2%3dvalue2 以下是 js 方式进行拼接示例:使用 encodeuricomponent 函数先对query携带的启动参数进行 urlencode 编码,再使用 encodeuricomponent 对整体 scheme 链接进行 urlencode 编码。接下来看一下,scheme 调用小程序之后,应用和页面的处理逻辑。在叙述之前,先了解下前后台的定义。前台/后台运行●前台运行: 当用户首次打开小程序时候,小程序会处于前台运行状态。●后台运行: 用户点击右上角关闭按钮关闭小程序,或者按下设备 home 键离开支付宝客户端时,小程序并不会直接销毁,而是进入后台运行状态。只有当小程序进入后台一定时间,或者系统资源占用过高,才会被真正的销毁。●从后台运行切换为前台运行: 当未被系统销毁的小程序再度被打开或者激活时,会从后台运行切换为前台运行。应用逻辑每次通过 scheme 调用,前端表现是重新触发 onlaunch 和 onshow,都会传参给 app.js 的 onlaunch 和 onshow,基础页面会重新触发 onload 和 onshow 方法。 在保活期间(5分钟),例如锁屏之后,会重新触发 onshow 方法,但是却无法获取参数,即传参 scheme 只会在调用的时候触发一次,再次启动只是触发 onshow 不会传参。只能前端在 onshow 里做相应的业务逻辑。页面的逻辑当小程序用 scheme 从后台唤起的时候,其实相当于重新被打开了onload,还有 onshow 都会被触发。 在保活期间(5分钟)被重新唤起的时候,就只会触发 onshow 。小程序通过 scheme 跳转如何获取启动参数参考如何在小程序启动后获取启动参数。小程序 scheme 链接应用商家可以通过 h5/android/ios 应用使用 scheme 链接来跳转到支付宝小程序。h5 跳转小程序android app 跳转小程序ios app 跳转小程序