本文介紹通過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的參數,有以下幾步: