iOS编程

iOS Universal Link通用链接配置

2020-07-26  本文已影响0人  iOS开发实践

今天我们app在分享内容到微信时,部分用户手机上会显示未验证应用,或者部分用户分享到QQ直接失败,原因就是由于苹果iOS13系统版本安全升级,微信分享以及QQ分享要求应用支持Universal Link方式跳转。
解决方法:先升级微信sdk,再配置应用支持Universal Link

Universal Link

Universal Link 是 iOS9 推出的一项新功能,在你的应用配置了Universal Link之后,用户能够在点击链接时直接打开已安装的app,不需要额外的任何操作,如果没有安装app,就会使用safari打开网页。在iOS9之前,其他应用跳转我们app通常使用的是scheme 的方式。

如何配置通用链接

1、创建一个json格式的空文件(必须命名为apple-app-site-association,没有后缀),内容如下:

单个app.png

2、上传apple-app-site-association文件
将第1步的文件交给服务端的同事,让他上传到域名目录下(注意告诉他文件要去后缀),并且Web server需要支持https,客户端通过https来访问,支持重定向。

Apple开发官网去配置

在开发者网站上找到对应app的identifier,选中Associated Domains。

项目配置

1、xcode中添加对应的域名,如下图:
applinks:+app的域名,例如:applinks:baidu.com

2、在plist文件中,新增weixinULAPI,如下图:

3、在AppDelegate中,添加如下方法:

检测是否配置成功

将app删除,重新编译完成,安装到手机后。打开备忘录,输入https://域名,点击,可以跳转app,则表示配置成功。

微信、QQ平台配置

进入微信、QQ的平台,找到对应的应用详情设置,添加Universal Link参数,例如:https://baidu.com/;如果apple-app-site-association文件设置了路径,那么Universal Link就要写https://baidu.com/路径/。
然后可以测试分享:只有首次出现二跳(也就是先出现app连接微信的一个页面,然后回到自己app,再次自动跳转微信),以后都是直接跳转微信时,才代表成功。

注意

如果公司有两个app时,在配置apple-app-site-association文件时,需要用不同的路径来区分跳转哪个app,格式如下图:

多个app.png
上一篇下一篇

猜你喜欢

热点阅读