線上用戶通過我們的App分享微信朋友圈短蜕,在朋友圈下面會出現(xiàn)"未驗證應用"的標識,查明原因豪椿,解決這個問題需要先實現(xiàn)Universal Link!!!此篇文章就是關于Universal部署的一篇博客波丰,看到的小伙伴希望能解決你的問題赋荆,關于微信分享的二次跳轉(zhuǎn)后續(xù)會再更新一篇。下面是正文:
關于Universal Link:
Universal Link(通用鏈接)是Apple在WWDC2015上為iOS9引入的一個新功能尝抖,是通過傳統(tǒng)HTTP鏈接來啟動App的技術毡们。可以使用相同的網(wǎng)址打開網(wǎng)站和App牵署。通過唯一的網(wǎng)址漏隐,就可以鏈接到App中具體的視圖,不需要特殊的scheme奴迅。如果用戶沒有安裝App則鏈接到對應的普通網(wǎng)頁青责。
1.開發(fā)前的準備:
- 有一個域名
- 通過SSL訪問域名(即使用HTTPS請求)
- 支持上傳一個JSON文件到你的域名
- 至少iOS9 beta2 版本
- 至少Xcode 7 beta2
2.服務器MINE環(huán)境配置和apple-app-site-association路徑配置(服務器)
首先創(chuàng)建一個名為apple-app-site-association的文件(注意沒有后綴),其內(nèi)容是json格式的數(shù)據(jù)取具。內(nèi)容如下:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "TeamId.BundleID",
"paths": ["/testLinks/*"]
}
]
}
}
Tips:
-
TeamID和BundleID需在開發(fā)者中心中查看
- apple-app-site-association文件無后綴脖隶,可用mac的文本編輯app制作純文本
apple-app-site-association文件制作好后,讓后臺小伙伴在服務器根目錄下新建一個名為".well-known"名稱的文件夾暇检,然后將apple-app-site-association文件放到“.well-known"文件夾中产阱,并且服務器MINE配置application/json類型,配置好后可用蘋果工具校驗是否成功:入口
測試結果如下圖說明配置成功
雖然有一個error块仆,但是不影響使用构蹬,如果失敗會爆紅!
出現(xiàn)這種情況按上述配置逐步排查王暗,無報錯可進行下一步
3.apple證書配置(前端)
開發(fā)者中心在AppID中打開Associated Domains權限,然后save然后創(chuàng)建新的描述文件庄敛,安裝到xcode上俗壹,ps:不用創(chuàng)建p12,僅創(chuàng)建描述文件即可
4.Xcode配置(前端)
打開Xcode →targets ->Signing&Capabilitie→確認描述證書是否是最新:可暫時關閉自動管理功能藻烤,查看描述文件是否更新绷雏,確認后可重新恢復自動管理功能
applinks:后加入域名,這里的域名不要帶https和/ 我們的域名是:https://werewolf.53site.com
那么Xcode中就這么填寫 applinks:werewolf.53site.com
配置之后檢查Xcode中會生成一個.entitlements文件,如果沒自動生成需手動添加
5.驗證生效
配置好xcode后怖亭,刪除手機上安裝的App涎显,重新build,在備忘錄中數(shù)據(jù)"你的域名"+"apple-app-site-association文件內(nèi)的路徑"+123/abc
例如:https//werewolf.53site.com/testLinks/123
輸入結束后長按此鏈接兴猩,如果配置成功會彈出在"你的app"中打開字樣期吓,說明配置成功
或者直接將鏈接輸入在safari中,下滑頁面倾芝,出現(xiàn)打開也說明配置成功
6.異常排查(如果你已經(jīng)驗證了第五步膘婶,并且生效了,請忽略這步)
這一步蛀醉,你應該已經(jīng)確認了上述提到的2悬襟、3、4點并且確信沒有問題拯刁,但是第5點就是不能驗證成功脊岳,那么你可以使用接下來的方式查找原因:
查看apple-app-site-association文件是否下載成功:
在開發(fā)中,我遇到了蘋果驗證工具驗證成功垛玻,但是客戶端下載不成功的情況割捅,可以通過Xcode控制臺查找Log查看是否真正的下載成功
Xcode =>window=>Devices and Simulators=>Open Console
Xcode->run。將控制臺輸出過濾為"swcd"帚桩。如果成功亿驾,你會看到類似以下的屏幕截圖。
如果失敗账嚎,你還會看到其他內(nèi)容莫瞬,例如:
Error getting enterprise-managed associated domains data. If this device is not enterprise-managed, this is normal: Error Domain=SWCErrorDomain Code=1701 "Failed to get associated domain data from ManagedConfiguration framework." UserInfo= {NSDebugDescription=Failed to get associated domain data from ManagedConfiguration framework., Line=250, Function=<private>} "
當時遇到這個問題是apple-app-site-associatio文件在.well-known文件夾下的配置不對導致的,如果還不能解決你的問題郭蕉,也可參考這兩篇文章排查:
http://www.reibang.com/p/4e53ca3186d2
http://www.reibang.com/p/b0cbd349440b
至此疼邀,我的這篇Universal Link的踩坑總結就結束了,后續(xù)會更新一篇關于微信接入Universal Links后的一些問題的排查方案召锈,此篇文章如有遺漏疏漏的地方旁振,歡迎指正。
微信分享二次跳轉(zhuǎn)和未驗證應用排查方法