美文网首页iOS编程
iOS Universal Link通用链接配置

iOS Universal Link通用链接配置

作者: iOS开发实践 | 来源:发表于2020-07-26 00:06 被阅读0次

    今天我们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
    • 这里的appID是:TeamID.BundleId(例如:9JA89TEAM.com.apple.test),TeamID可以在开发者账号里面查看
    • 这里的path是指:允许的路径列表,可以是一个,也可以是多个,最简单的方式是使用“*”,通配符,表示允许该域名下的任意路径,注意大小写

    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

    相关文章

      网友评论

        本文标题:iOS Universal Link通用链接配置

        本文链接:https://www.haomeiwen.com/subject/urnmlktx.html