天天看點

deeplink支援html形式,如何用Deeplink為快應用提供多個快速直達入口

開發者将快應用上架應用市場後,希望能有多個入口直達快應用,進而提高其快應用的曝光率,帶來更多的流量。而快應用開放的标準deeplink能力可以滿足開發者的需求。

應用場景

Deeplink可以應用在如下場景:

社交分享

将快應用的Deeplink連結,通過社交軟體進行分享,使用者點選連結就可以直接打開快應用。

廣告推廣

将快應用的Deeplink連結,放入廣告推廣頁面,使用者點選連結就可以直接打開快應用。

營運活動

進行營運活動時,如果使用快應用來吸引使用者參與到活動中,可以将快應用的Deeplink連結嵌入到營運活動宣傳頁面,進而友善使用者的參與。

格式支援

快應用Deeplink支援以下連結格式:

推薦使用:

hap://app//[path][?key=value]

https://hapjs.org/app//[path][?key=value]

僅适用于華為手機:

hwfastapp:///[path][?key=value]

package:應用包名,必選。

path:應用内頁面的path,可選,不填寫的話,預設為首頁。

key-value:需要傳給頁面的參數,可選,可以有多個。傳遞的參數值有可能被其他應用擷取,建議不要傳遞安全敏感度較高的資料。

開發過程

以下我們以跳轉包名為com.huawei.quickapp的快應用demo為例,講解Deeplink的使用。

通過快應用demo的manifest.json檔案,我們可以獲得如下資訊:

包名:com.huawei.quickapp。

應用名稱:demo。

頁面:包含Hello和Detail兩個頁面,其中Hello為首頁。

deeplink支援html形式,如何用Deeplink為快應用提供多個快速直達入口

在快應用中調用Deeplink打開快應用demo的示例代碼如下:

import router from '@system.router'

router.push({

uri: 'hap://app/com.huawei.quickapp’

})

在網頁中通過點選連結打開快應用demo的示例代碼如下:

跳轉到快應用demo

以上例子沒有配置跳轉的具體頁面,是以預設進入快應用demo的首頁Hello,如果想調整到Detail頁面,代碼可以修改為:

import router from '@system.router'

router.push({

uri: 'hap://app/com.huawei.quickapp/Detail’

})

如果還需要向Detail頁面傳遞參數,可以将參數以key-value形式拼接在後面,多個參數使用&連接配接。假設向Detail頁面傳遞source和name參數,則代碼修改為:

import router from '@system.router'

router.push({

uri: 'hap://app/com.huawei.quickapp/Detail?source=net&name=aa’

})

接入Detail頁面後擷取參數值的代碼如下:

onShow: function () {

var nameValue=this.name;

var sourceValue=this.source;

}

開發完,可以在本地對Deeplink進行測試,進而驗證跳轉連結的準确性。

注意:測試前,請確定華為快應用加載器中有目标快應用的使用記錄。

測試

方法一:使用 android adb 指令(電腦需配置好adb環境)

adb shell am start -a android.intent.action.VIEW -d hap://app/com.huawei.quickapp/Detail

注意:使用指令測試不适用傳遞多個參數的場景。

方法二:在一個本地網頁中添加需測試的Deeplink超連結

window.location.href="hap://app/com.huawei.quickapp/Detail?source=net&name=aa" target="_blank" rel="external nofollow" ;