本文介绍通过deeplink链接方式实现跳转小程序。
在小程序使用场景中,除了在小程序市场中通过点击小程序跳转到小程序首页之外,结合小程序的运营需求,可能还有以下使用需求:
推送场景,点击通知跳转到小程序指定的页面。
Banner场景,结合运营需求,通过点击banner跳转到小程序指定的页面。
H5场景,在H5页面中点击链接跳转到小程序指定的页面。
其他App,从其他App内跳转到小程序指定的页面。
小程序可以通过deeplink链接方式实现跳转到小程序内的某个页面,仅需要定义好小程序的deeplink链接格式就可以满足上述使用场景。
DeepLink格式
deeplink的结构主要包含下面的5个组成部分。
scheme://miniapp/startapp?appId=[appId]&path=[path]&query=[query]参数 | 描述 | 示例 |
scheme | deeplink的schema。需要Superapp自定义。 | emassuperapp |
miniapp/startapp | deeplink的path。需要Superapp自定义。 | miniapp/startapp |
appId=[appId] | 小程序唯一id,从EMAS应用开放平台获取。 | 15116638413925671xxxxx |
path=[path] | 小程序内的特定页面的path。可选,没有path的话跳转到小程序首页。 | UrlEncode 编码前: /about/index UrlEncode 编码后: %2Fabout%2Findex |
query=[query] | 从外部携带的参数传递给目标小程序,如果不需要携带参数可以不带query部分。 | UrlEncode 编码前:key1=value1&key2=value2 UrlEncode 编码后:key1%3Dvalue1%26key2%3Dvalue2 |
使用示例
下面以在EMAS Superapp中打开小程序id为1511663841392567144448的小程序为例子进行介绍。
打开小程序首页
如果你想打开小程序的首页,有以下几步:
生成deeplink:emassuperapp://miniapp/startapp?appId=1511610974500886700032
将deeplink下发给Superapp
Superapp解析deeplink,获取appId
打开小程序指定页面
如果你想打开小程序的指定页面,比如windvane小程序的about页面,有以下几步:
生成deeplink:emassuperapp://miniapp/startapp?appId=1511610974500886700032&path=%2Fadd
将deeplink下发给Superapp
Superapp解析deeplink,获取appId和path
打开小程序携带参数
如果你想打开小程序并携带参数,比如windvane小程序的about页面,携带name是EMAS的参数,有以下几步: