1、開(kāi)啟Associated Domains服務(wù)
登錄蘋(píng)果開(kāi)發(fā)者網(wǎng)站需了,在Certificates, Identifiers & Profiles頁(yè)面左側(cè)選擇Identifiers爹袁,右側(cè)選擇對(duì)應(yīng)的App ID惊豺,點(diǎn)擊進(jìn)入配置詳情頁(yè)其屏,開(kāi)啟Associated Domains服務(wù)证鸥;
2功戚、更新Profile文件(配置文件)
在Certificates, Identifiers & Profiles頁(yè)面左側(cè)選擇Profiles娶眷,右側(cè)選擇對(duì)應(yīng)的配置文件,點(diǎn)擊進(jìn)入啸臀,點(diǎn)擊Edit進(jìn)入修改頁(yè)届宠,直接點(diǎn)擊Save,保存后點(diǎn)擊Download下載并打開(kāi);
3席揽、Xcode配置
Xcode打開(kāi)項(xiàng)目顽馋,進(jìn)入工程配置,添加Associated Domains項(xiàng)幌羞,步驟如圖:
4寸谜、添加完成后配置applinks域名
注意:
a、必須是https鏈接
b属桦、必須外網(wǎng)能訪問(wèn)(可以理解為不用代理直接用流量能訪問(wèn))
c熊痴、將https://替換為applinks:
d、不用/結(jié)尾
e聂宾、可以給Debug果善、Release分別配置。
配好后格式如圖:(applinks:為前綴系谐,test.uubx.com為域名)
5巾陕、創(chuàng)建apple-app-site-association文件
(1)文件名必須為:apple-app-site-association,直接復(fù)制
(2)文件不能跟后綴纪他,是純文本
(3)文件必須放在服務(wù)器根目錄或者.well-known目錄下鄙煤,這是蘋(píng)果規(guī)定的,具體請(qǐng)教后端的同事
創(chuàng)建步驟:
a茶袒、打開(kāi)系統(tǒng)自帶的文本編輯器梯刚,進(jìn)入偏好設(shè)置,如圖:
b薪寓、進(jìn)入打開(kāi)和存儲(chǔ)亡资,關(guān)閉給純文本文件添加.txt擴(kuò)展名選項(xiàng),如圖:
c向叉、選擇格式锥腻,切換為制作純文本,如圖:
d植康、編輯內(nèi)容旷太,先復(fù)制以下內(nèi)容到編輯器,并看注釋
{
"applinks": {
"apps": [],
"details": [
{
"appID": "AAAAA.BBBBB",
"paths": ["/path1/*"]
},
{
"appID": "CCCCC.DDDDD",
"paths": ["/path1/*","/path2/*","/path3/*"]
},
{
"appID": "EEEEE.FFFFF",
"paths": ["/*"]
}
]
}
}
注釋:
(1)格式是固定的
(2)apps為空就行销睁,不需要更改
(3)支持多個(gè)App共用一個(gè)apple-app-site-association文件(即一個(gè)域名有多個(gè)App在使用)
(4)多個(gè)App共用供璧,只需要在上述配置details中添加
(5)details為一個(gè)list,切記注意格式
(6)details下一個(gè)字典為一個(gè)App冻记,多個(gè)App添加多個(gè)字典就行睡毒,注意,號(hào)隔開(kāi)
(7)details下字典格式固定,注意別更改
(8)appID格式為:Team ID+.+Bundle Identifier冗栗,即上述配置中演顾,AAAAA供搀、CCCCC、EEEEE為Team ID钠至,BBBBB葛虐、DDDDD、FFFFF為Bundle Identifier棉钧,注意Team ID與Bundle Identifier中間用”.“鏈接
(9)Team ID查找屿脐,登錄開(kāi)發(fā)者賬號(hào),進(jìn)入賬戶宪卿,進(jìn)入會(huì)員資格詳細(xì)信息的诵,找到團(tuán)隊(duì) ID,即為Team ID佑钾,如圖
(10)paths是一個(gè)list西疤,表示路徑,一個(gè)App可以配置多個(gè)path休溶,也可以直接使用/*
(11)/* 表示通用鏈接代赁,即只要域名正確,可以直接命中邮偎,一般不建議直接使用/* 管跺,如配置為/path1/* 义黎,則必須域名+/path1/才能命中
(12)path中的路徑是自定義的禾进,但一定要以/* 結(jié)尾,切記廉涕,切記泻云,切記
e、編輯好內(nèi)容后狐蜕,保存文件宠纯,切記文件名字必須為apple-app-site-association,如圖:
6层释、上傳文件到服務(wù)器
將剛才的文件發(fā)送給后端同事婆瓜,讓幫忙上傳至服務(wù)器根目錄或者.well-known目錄下,切記贡羔,只能這兩個(gè)目錄
7廉白、驗(yàn)證
7.1 驗(yàn)證服務(wù)器文件上傳是否成功
在服務(wù)器上傳文件后,通過(guò)瀏覽器是可以正常訪問(wèn)到的乖寒。如果文件放在根目錄下猴蹂,鏈接為:https://test.uubx.com/apple-app-site-association,如果文件放在.well-known目錄下楣嘁,則鏈接為:
https://test.uubx.com/.well-known/apple-app-site-association(注:https://test.uubx.com/需要替換為你自己的域名)磅轻。瀏覽器打開(kāi)后珍逸,會(huì)看到我們剛才配置的apple-app-site-association文件內(nèi)容,如果不能聋溜,則需要查看文件目錄是否正確谆膳,網(wǎng)絡(luò)是否支持外網(wǎng),服務(wù)器是否攔截撮躁。
7.2 驗(yàn)證Universal Link鏈接是否配置正確
方法一:打開(kāi)備忘錄摹量,輸入https://test.uubx.com/path1/(域名替換為你配置的域名,path1路徑替換為你自己配置的路徑馒胆,如果直接配置的/* 則直接輸入域名即可)缨称,編輯完成后,長(zhǎng)按鏈接祝迂,如果出現(xiàn)在”XXX”中打開(kāi)睦尽,則表示配置成功。如圖:
方法二:打開(kāi)safri瀏覽器型雳,輸入https://test.uubx.com/path1/(域名替換為你配置的域名当凡,path1路徑替換為你自己配置的路徑,如果直接配置的/* 則直接輸入域名即可)纠俭,編輯完成后沿量,點(diǎn)擊前往,加載完成后(會(huì)有一個(gè)報(bào)錯(cuò)頁(yè)面)冤荆,輕輕下拉網(wǎng)頁(yè)朴则,如果出現(xiàn)App的圖標(biāo)、名稱和打開(kāi)按鈕钓简,則表示配置成功乌妒。如圖:
Tips:
a、 apple-app-site-association文件會(huì)在第一次安裝App的時(shí)候自動(dòng)下載
b外邓、 如果手機(jī)上已經(jīng)安裝過(guò)App撤蚊,并且已經(jīng)下載過(guò)apple-app-site-association文件,這時(shí)服務(wù)器更改了apple-app-site-association文件损话,手機(jī)上的apple-app-site-association文件是不會(huì)自動(dòng)更新的侦啸。
c、 偶現(xiàn)過(guò)一種情況丧枪,手機(jī)網(wǎng)絡(luò)卡光涂,在打開(kāi)App后,猜測(cè)系統(tǒng)自動(dòng)下載apple-app-site-association文件失敗豪诲,導(dǎo)致手機(jī)上沒(méi)有apple-app-site-association文件顶捷,這時(shí)系統(tǒng)不會(huì)在自動(dòng)下載apple-app-site-association文件,不知道描述是否正確屎篱,偶現(xiàn)過(guò)一兩次服赎。
d葵蒂、 如果出現(xiàn)b、c兩種情況重虑,嘗試解決辦法践付,1、完全殺死App缺厉,然后重啟手機(jī)永高,手機(jī)開(kāi)機(jī)后,不要先打開(kāi)App提针,等待網(wǎng)絡(luò)穩(wěn)定后命爬,在打開(kāi)App; 2辐脖、直接卸載當(dāng)前App饲宛,重新下載。在網(wǎng)絡(luò)較穩(wěn)定的情況下打開(kāi)App嗜价。
e艇抠、 感覺(jué)最坑的一個(gè)是apple-app-site-association應(yīng)該不是實(shí)時(shí)的,會(huì)有一定延遲久锥,如果整體流程按照要求配置完成家淤,沒(méi)有出錯(cuò)的情況下,出現(xiàn)無(wú)法打開(kāi)的情況瑟由,可以嘗試更換其他手機(jī)測(cè)試絮重,或者稍微等待。