Universal Links相關(guān)問題

Universal Links(通用鏈接),是蘋果在iOS9之后,提供的一種“可通過傳統(tǒng)HTTP鏈接來跳轉(zhuǎn)APP”的能力。 該特性相較于傳統(tǒng)的Custom URL Scheme方式,具備唯一、安全、私有和簡單的優(yōu)勢(shì)
官方文檔

1、apple-app-association文件配置

1.域名必須支持 HTTPS
2.文件路徑,二選一(不帶任何后綴):
- https:// {host} /apple-app-site-association
- https:// {host} /.well-known/apple-app-site-association
3.JSON 文件大小必須小于 128KB
4.該文件需要上傳到主域名對(duì)應(yīng)服務(wù)器的根目錄

文件內(nèi)容格式如下

{
    "applinks": {
        "apps": [],
        "details": [{
            "appID": "xxx",
            "paths": ["/test_tika_app/*","/test_tiaka_userinfo/*"]
        }]
    }
}

"appID":內(nèi)容為TeamID.bundleID(ex:7ABCDEFD.com.apple.wwdc),是唯一的
"paths"是一個(gè)字符串?dāng)?shù)組指定可以通過哪些Path跳轉(zhuǎn)至app。這里設(shè)置了"/test_tika_app/*",外部可以通過"https://{host}/test_tika_app/xxx”跳轉(zhuǎn)至我們app。


2、Xcode配置

1.證書需要開啟Associated Domains功能
2.Xcode 配置Associated Domains 。 添加Domains ,格式為applinks:{host}

3、測試

可以通過Safari測試,在Safari輸入地址https://{host}/test_tika_app/xxx 下滑可以顯示橫幅,點(diǎn)擊可以打開app

通過Universal Link進(jìn)入app時(shí)會(huì)觸發(fā)代理方法
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler
4、Universal Links基本運(yùn)作流程
  1. APP第一次啟動(dòng) or APP更新版本后第一次啟動(dòng)
  2. APP向工程里配置的域名發(fā)起Get請(qǐng)求拉取apple-app-association Json File
  3. APP將apple-app-association注冊(cè)給系統(tǒng)
  4. 由任意webview發(fā)起跳轉(zhuǎn)的url,如果匹配了apple-app-association注冊(cè)過的通用鏈接(path字段配置)
  5. 打開App,觸發(fā)Universal Link delegate
  6. 沒匹配,webview繼續(xù)跳轉(zhuǎn)url(當(dāng)普通的url跳轉(zhuǎn))
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容