一、准备工作
- 有一个注册的域名
- 域名可通过 SSL 访问(需要有效的证书)
- 支持上传一个 JSON 文件到域名
- 我使用的是阿里云服务器,宝塔面板搭建,ssl证书使用的是
Let's Encrypt
的测试证书。
这里注意: 我用宝塔ssl一直是不成功的,换成Let's Encrypt
后是可以了。
二、Xcode工程配置
-
首先就是打开工程配置中的Associated Domains打开
image.png
在其中的Domains中填入你想支持的域名
(PS:这里不是随便填的,是可以支持你需要的Universal Links的域名),
必须以 applinks: 为前缀
三、服务端配置
1.创建apple-app-site-association为名字的json文件,注意这个文件必须没有后缀名。
文件名必须为apple-app-site-association
{
"applinks":{
"apps":[
],
"details":[
{
"appID":"9JA89QQLNQ.com.apple.test01",
"paths":[
"/*"
]
}
]
}
}
说明:
appID: teamId + bundleId
paths: 设定一个你的app支持的路径列表,只有这些指定的路径的链接,才能被app所处理,
举个例子:如果你的网站是www.testdemo.com
,你的path写的是"/support/*",那么当用户点击www.testdemo.com/support/myDoucument
,就可以进入你的app了,相反www.yohunl.com/other
就不会.
- 上传apple-app-site-association文件
-
上传该文件
apple-app-site-association
到你的域名所对应的网站的根目录下
这一步是为了苹果能从https://你的域名/apple-app-site-associationxh
获取到你上传的apple-app-site-association文件. -
如果根目录下有
.well-know
文件夹,也需要上传apple-app-site-association文件,如果没有.well-know
文件夹,需要创建文件夹,注意前面的点 -
上传完后,自己先访问一下,看看是否能够获取到
https://更换你的域名/apple-app-site-association
https://更换你的域名/.well-know/apple-app-site-association
-
苹果为了方便开发者,提供了一个网页来验证我们编写的这个apple-app-site-association是否合法有效,验证网址,进入网站进行验证
-
3.经测试发现,在相同的域名内Universal Links是不work的,必须要跨域才生效,
我们实测值需要跨子域名即可,比如 app.domain.com
跳转 rss.domain.com
是可以触发跳转App。
- 在
rss.domain.com
域名中配置apple-app-site-association文件 - 在
app.domain.com
域名中写跳转页面
4.在app.domain.com
中添加index.html 文件
- 内容为:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>open_app</title>
<meta charset=UTF-8>
</head>
<body>
<p style="text-align: center">
<a style=" color:#00008b; font-size:80px;" href='https://rss.qssen.com/appLink.html'>拉起app</a>
</p>
</body>
</html>
index.html文件内容就一个跳转连接,https://rss.qssen.com/appLink.html
- 贴一下appLink.html的内容
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>open_app</title>
<meta charset=UTF-8>
</head>
<body>
hello
</body>
</html>
这里只是随便写的,保证能打开页面。
5.到这里应该差不多了,
- 开始同样放在rss.qssen.com域名下,怎么也启动不了,后来换了下域名,问题解决。
- apple-app-site-association文件不能带后缀,务必把”.json”的后缀去掉!有些人的电脑是隐藏文件后缀的,这要格外注意;
- apple-app-site-association要传到域名根目录或者/apple-app-site-association目录下;
- 抓包的结果显示,网络顺畅的情况下,应用会在在刚安装(不是打开)的时候会去applink中的地址下载apple-app-site-association文件,所以如果需要测试,请保证网络通畅;
四、测试
1.要跳转的app运行到手机上
2.在Safari输入跳转地址https://app.qssen.com/index.html
,点击页面的跳转app,则会打开app,
3,在Safari输入https://rss.qssen.com/appLink.html
,下滑,你会发现顶部出现打开app的横栏,点击打开app
跳转app
image.png
横幅
image.png
网友评论