導入SDK 和配置 SDK 的不做介紹;
1 在IOS 開發者中心 Identifiers
打開‘Associated Domains’
2 建立一個文件(不帶后綴的)apple-app-site-association, teamid在 IOS 開發者中心的會員找,appid在 xcode里面找
{"applinks": {"apps": [],"details": [{"appID": "teamID.appid","paths": ["/test/*"]}]}
}
3 把這個文件給服務器,上傳到跟目錄/test,比如你的域名是 www.baidu.com
那么你的服務的目錄就是 www.baidu.com/test/apple-app-site-association
4 微信后臺設置Universal Links : https://www.baidu.com/test/
. (需要注意的是這個一定是/結尾的)
5 代碼里面的 [WXApi registerApp:@“aasfdsfsdfwqerw” universalLink:@“https://www.baidu.com/test/”]; 這里上微信的一致
5.1 xcode的 TARGETS -> signing capabilities 里面添加 Associated Domains 的Domains: applinks:www.baidu.com
. 這里不要添加目錄
6 設置完后用IOS 瀏覽器輸入‘www.baidu.com/test/’ 這個地址后能打開微信,基本上算是成功了;
檢測apple-app-site-association是否正確
按照微信的自檢測是否接入正確的代碼
//在register之前打開log, 后續可以根據log排查問題
[WXApi startLogByLevel:WXLogLevelDetail logBlock:^(NSString *log) {
NSLog(@“WeChatSDK: %@”, log);
}];
//務必在調用自檢函數前注冊
[WXApi registerApp:APP_ID universalLink:UNIVERSAL_LINK];
//調用自檢函數
[WXApi checkUniversalLinkReady:^(WXULCheckStep step, WXCheckULStepResult* result) {
NSLog(@“%@, %u, %@, %@”, @(step), result.success, result.errorInfo, result.suggestion);
}];
step一直輸出到 7,證明是接入成功了,一般情況下都卡在 5,6,7,按照上邊的接入完整后,如果出現5,6,7 沒有輸出,按照下邊的寫入試試
https://developers.weixin.qq.com/community/develop/doc/000880a051015855aea992f995bc09
- (voidscene:(UIScene *)scene continueUserActivity:(NSUserActivity *)userActivity {return [WXApi handleOpenUniversalLink:userActivity delegate:self}//OC
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:void(^)(NSArrayidUIUserActivityRest
oring>> * __nullable restorableObjects))restorationHandler {return [WXApi handleOpenUniversalLink:userActivity delegate:self];
}