首页 > 未分类 > 正文

什么是通用链接?

通用链接是iOS9推出的一项新功能,如果你的应用app支持通用链接(Universal Link)之后,iOS用户能够在点击网页的链接的时候无缝的重定向到已经安装的app,不需要额外的任何操作。如果没有安装对应的app,那么点击链接会使用Safari打开网页。在iOS9以前,对于各种浏览器,Safari中唤醒app的需求,我们通常是只能使用scheme的方式。

为什么要突然改用通用链接的配置方式?

如一个项目中唤起第三方app一般是通过配置对应的·URL Scheme·的方式使用的,微信SDK的最新版本·openSDK1.8.6 ·由于苹果·iOS 13·系统版本安全升级,为此openSDK1.8.6版本进行了适配。 1.8.6版本支持Universal Links方式跳转,对openSDK分享进行合法性校验,提升使用过程中的安全性。

如何配置通用链接?

简单三步

1、创建json格式的一个空文件(取名必须为apple-app-site-association,并且没有后缀)放在指定服务器根目录,(有自己的域名,且支持Https)

{
  "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "公司开发者账号的小组ID.包名id",
                "paths": [ "*" ]
            }
        ]
    }
}

这里的appID是指:TeamID+BundleId的组成(例:9JA89QQLNQ.com.apple.test)(TeamID可以在开发者账号里面查看,BundleId是项目的Bundle Identifier)。

这里的paths是指:是设置允许的路径列表,可以是一个也可以是多个,最简单的方式是使用“*”,通配符,表示允许该域名下的任意路径。(注意:paths中的大小写是敏感的,一定要一一对应

2、登陆开发者账号,开启该AppId下的关联域名(Associated Domains)功能设置AssociateDomain
Associated Domains
3、在Xcode中配置关联域名


(1)apple-app-site-association文件发给服务器端的同事,让他上传到域名的根目录下或者.well-known的子目录下(这里的域名必须要是可访问的域名,由服务器端的同事给到)。

(2)Web server需要支持https,客户端通过https来访问,并且不支持重定向。

在app中处理通用链接
添加对应的域名(上面知道的域名)到Capabilities在项目里面定位到Capabilities,找到Associated Domains,点击允许按钮,在Domains中添加对应的域名。(Domains中的域名必须是使用applinks开头,然后输入自己的域名即可。注意:当app第一次启动之后,会自动从你自己的域名目录下下载这个apple-app-site-association文件。)

综上所述universal link的配置,对于iOS开发者来说并不难,但服务端配置就涉及购买域名,https购买,以及配置apple-app-site-association。这样弄起来就比较麻烦,还需要去复杂的配置,还好有三方的平台可以使用

我自己用的是【Xinstall】的服务(之前用过这家的内测服务),登陆注册以后就可以免费使用了。比较推荐这种方法

Xinstall universal link

网站所收集到的公开内容均来自于互联网或用户投稿,并不代表本站认同其观点,也不对网站内容的真实性负责,如有侵权行为请及时联系删除!

猜你喜欢
文章评论已关闭!
picture loss