QQ互联将于2019年12月1日进行Universal Links校验,请开发者及时更新适配。
https://wiki.connect.qq.com/qq互联将于2019年12月1日进行universal-links校验,请开发者及时更
官方说明:
当支持通用链接时,用户可以点击网站链接重定向到已安装的应用(无需通过Safari浏览器),如果未安装应用则打开该网站链接。
配置前准备:
配置前提:域名需要支持 HTTPS 连接
开始配置:
- 打开 https://developer.apple.com,登录苹果开发者账号,开启要配置的
APP IDs
的Associated Domains
服务 (开启服务后需要重新激活失效的Provisioning Profiles,并重新下载安装)。
2.项目配置支持通用链接的域名(支持添加多个域名)
格式:applinks:xxx.xxx.xx,例如:applinks:d.vibesix.cn。
3.需要服务器支持,确认通用链接对应的App的身份,创建一个命名为apple-app-site-association
文件(没有后缀名),并写入一下JSON
格式数据,如下:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "<App ID Prefix>.<Bundle ID>",
"paths": [ "/open-app.html/*"]
}
]
}
}
然后将apple-app-site-association
文件拷贝到该域名服务器的.well-known
文件夹下面。
ps:App ID Prefix
和Bundle ID
可在图1
蓝框部分获取到,paths
是通用链接域名后面的路径,*代表任意路径。
4.测试通用链接是否生效,进入https://search.developer.apple.com/appsearch-validation-tool
进行验证。
然而我试过n+1次,无法验证成功,并报错:
Could not extract required information for application links. Learn how to implement the recommended Universal Links.
Error no apps associated with url
果断放弃验证(后来发现这个过程可以忽略),然后试了网上的方法将通用链接粘贴到手机
备忘录
上,点击链接即可跳转到 App 里,如图:5.进入应用,定位到指定功能模块。
- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler {
if ([[userActivity activityType] isEqualToString:NSUserActivityTypeBrowsingWeb]) {
NSString *host = userActivity.webpageURL.host;
if ([host isEqualToString:@"d.vibesix.cn"]) {
// 跳转操作
}
}
return YES;
}