iOS Universal Link使用

Universal Link是iOS9退出的外部打开APP的新功能。之前打开APP使用的是scheme方式,这种方式不够安全。从微信SDK1.8.6版本开始就要求使用Universal Link这种方式去打开APP。苹果官方文档

1. 配置xcode中Universal Link权限

xcode配置Universal Link权限,Domains中的域名必须是使用applinks开头,然后输入自己的域名即可。配置完发现证书报错了,是因为APP在苹果开发者中心的id没有开启Universal Link权限。

iOS Universal Link使用_第1张图片

2. 配置苹果开发者网站上APP的Universal Link权限

登录开发者中心,点击APP的id,勾选权限。完成后要编辑APP的描述文件然后下载导入xcode,之前的证书报错就消失了。
iOS Universal Link使用_第2张图片

3. 外部打开APP回调

 1. (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void(^)(NSArray> * __nullable restorableObjects))restorationHandler API_AVAILABLE(ios(8.0));
{
    if ([userActivity.activityType isEqualToString:NSUserActivityTypeBrowsingWeb])
    {
        NSURL *url = userActivity.webpageURL;
        [[UIApplication sharedApplication] openURL:url];
    }
     
    return YES;
}

4. 配置apple-app-site-association文件

格式严格按照下图去编辑是标准的json格式,符号都是英文的。appID字段是APP的teamID+“.”+boundID,ID信息可以去苹果开发者网站看。注意文件一定不能有后缀,否则无效。
iOS Universal Link使用_第3张图片

5. 上传apple-app-site-association文件

配置好的文件交给后台开发人员,让他们上传到服务器的根目录和.well-known子目录各一份。验证是否上传成功,可以浏览器直接访问域名+"/apple-app-site-association",会直接下载文件。

6. 验证是否配置成功

把配置的域名,拷贝到苹果手机记事本中,长按链接出现APP打开就说明配置完成了。下图以淘宝为例,长按链接弹框有在“手机淘宝打开”,至此已经完成配置。以淘宝为例可以看看验证网站 淘宝域名https://b.mashort.cn。把淘宝域名拷贝进验证网站可以看到信息。
iOS Universal Link使用_第4张图片
注意事项

  1. 域名必须是https的,否则不能使用
  2. 网页中打开链接跳转APP必须要重定向才行,否则不能打开
  3. apple-app-site-association文件不能有后缀
  4. 配置有改动需要重新安装APP才会生效

你可能感兴趣的:(iOS开发,ios,app,sdk)