一、Universal Links
开发过iOS的对UL都不陌生,定义可以看下这里
简单解释一下,iOS在访问https://xxx.com
时,会同时访问https://xxx.com/apple-app-site-association
如果apple-app-site-association
路径下是一个文件且该文件内容符合UL的配置规则,就会直接唤起配置中的iOS App
如果唤起失败,则会直接访问https://xxx.com
二、你需要一个可以访问的域名
UL就是一个正常的URL,所以需要有一个可以访问的域名,最好就是用App的官网链接
三、apple-app-site-association 文件
一个基础的apple-app-site-association
文件如下,主要看appID
和paths
配置
- appID:是一个组合字符串,通过
.
连接App的team id
和bundle id
- paths: 配置的路径,如果被访问时会去触发UL。如下面的配置,访问
https//xxx.com/open/
就会触发UL
json
{
"applinks": {
"apps": [],
"details": [
{
"appID": "TeamID.bundleID",
"paths": [
"/open/*",
]
}
]
}
}
这个文件不能加后缀,且需要放到域名服务器上,存放的路径有两个
- 放到域名服务器的根目录,确保
https://xxx.com/apple-app-site-association
能访问到文件 - 放到域名服务器的
.well-known
目录下,确保https://xxx.com/.well-known/apple-app-site-association
能访问到文件
四、配置manifest.json文件
Share
、Payment
、OAuth
三个模块有用到UL
对于微信,直接配置https://xxx.com/open/
即可,在微信申请对于权限时填写的UL也是这个即可
对于QQ,QQ有自己的一套规则,在apple-app-site-association
的paths
添加对应的路径即可