iOS Universal Link(通用链接)

什么是通用链接:

  通用链接是iOS9推出的一项新功能,如果你的应用(app)支持通用链接(Universal Link)功能,iOS用户能够在点击网页的链接的时候无缝的重定向到已经安装的app,不需要额外的任何操作。如果没有安装对应的app,那么点击链接会使用Safari打开网页。在iOS9以前,对于各种浏览器,Safari中唤醒app的需求,我们通常是只能使用scheme的方式。最重要的是Universal Link支持在微信中直接打开APP,可以通过微信快速获得新客户。
通用链接的使用:
'''
apple-app-site-association文件:

{
"applinks": {
"apps": [],
"details": [
{
"appID":"47P6T6SYNE.com.zzyg.travelnotes",
"paths": [ "*"]
}
]
}
}
'''
将apple-app-site-association文件上传到服务器的.well-known文件夹下面。在放置该文件之前可以验证的该文件的合法性:
验证文件是否合格
苹果验证网站
域名+“apple-app-site-association”进行验证(有时候这里校验也不是很准
[https://www.icarusli.com/apple-app-site-association]
将链接黏贴在微信之中,点击链接可以直接打开已经安装的APP。
在app之中需要增加一个代理:
'''
-(BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray * _Nullable))restorationHandler{
if ([userActivity.activityType isEqualToString: NSUserActivityTypeBrowsingWeb]) {
NSURL *url = userActivity.webpageURL;
}
return YES;
}
'''
利用这个代理,能够捕捉通过通用链接进入APP的时机,以及通用链接上面附带的信息。
通用链接实际上还是比较好实现的,看步骤都不难,如果能注意到我最开始说的两个问题就没什么好说的了,其他的就是按部就班。
下面讲一下在开发者证书之中配置 Universial Link:
1.登录APPDevelop

https://developer.apple.com/

2.开启对应的AppIDs的Associated Domains服务

image
image

3.编辑对应的Provisioning Profiles,并且重新下载双击安装

image

4.打开Xcode项目,开启项目的Associated Domains,这时候会看到左边目录下多出了一个文件,这是正常的。

image

关于通用来链接的坑:
1:应用必须支持Https。
2:将apple-app-site-association文件放在.well-known的根目录下。

你可能感兴趣的:(iOS Universal Link(通用链接))