最近,由于騰訊家的政策,我們把陳年老 App 們都拿出來更新了一波。記錄一下QQ采坑的辛酸過程。
QQ 開放平臺的配置文檔實在是過于模糊,我們摸索了好半天。
目標
假如,我有2個 App,它們的 universal Link 我預計配置成:
https://www.exmaple.com/test/app2/
這個 www.example.com 是我寫的測試域名,你們需要用替換為自己的后臺的域名。
iOS 端的證書和項目配置
一、profile 證書,需要添加 Associated Domains 支持。

二、在項目里,添加 Associated Domans.entitlements, 增加 applinks:域名,這里我們使用 "applinks:www.example.com"。
這里,注意是用,千萬不要寫成 http/https 之類的。
后面使用的是根域名,不要帶path。

三、LSApplicationQueriesSchemes 和 URL Types 要填對。舊版本升級上來的,QQ不需要變動,微信需要增加 weixinULAPI。
后臺配置
一、首先,你的域名要支持 https 啦。
二、配置 apple-app-site-association
https://www.exmaple.com/apple-app-site-association
https://www.exmaple.com/.well-known/apple-app-site-association
上面的任何一個鏈接,能訪問到就可以,任選其一。

驗證
確認首次安裝app有訪問域名,下載json。
在 iOS13+ 系統(tǒng)里,你可以打開配置的路徑,往下拉,只要配置正確,會顯示打開 App。

iOS13- 的系統(tǒng)里,在備忘錄里輸入鏈接,長按鏈接,可以看到打開 APP 選項。

微信開放平臺配置
無坑,按文檔配置即可。
如果你的分享步驟始終是2次,請檢查。(理論上一步驗證沒問題,這里不會出問題。)
首次分享:
App - 微信驗證頁 - App - 微信分享列表
非首次分享:
App - 微信分享列表
QQ 開放平臺配置
文檔不全。
URL Scehema的配置,請使用tencent開頭的編號。
網(wǎng)上流傳了一個QQ開頭的編號,但是我們測試總是報“設(shè)備未授權(quán)(錯誤碼:25105)”
配完后發(fā)現(xiàn) url schema 后的編號與 universal link 后的數(shù)字一致。如果不一致,請檢查是否配對。
當你配完QQ,請把后臺的 apple-app-site-association 加上騰訊給的路徑。然后回來開放平臺點擊驗證。通過后,就能QQ就能正常了。
首次分享和非首次分享情形與微信一致。


總結(jié)
微信的 universal link 是由我們自己定的。
QQ的卻是它們分配的。
所以至少有2個訪問路徑。(除非你微信也用QQ一樣的)
app1:
https://www.exmaple.com/app1/
https://www.exmaple.com/qq_conn/5544332211
app2:
https://www.exmaple.com/test/app2/
https://www.exmaple.com/qq_conn/1122334455
universal link的路徑,都是配在 apple-app-site-association 文件里。
程序里是不需要配置的,它會在首次安裝app時自己下載。
(ShareSDK)微信在注冊時,需要填寫 universal link,但 QQ 不需要。