Shr*_*wan 14 ios ios9 ios-universal-links
在服务器上上传apple-app-site-association文件的步骤是什么.stg1.example.com是需要进行通用链接并且文件应该在其根路径上传的网站.如何在iOS中上传服务以进行通用链接.如何在服务器上传json格式的文件?
Vin*_*ary 31
该apple-app-site-association文件需要通过https://stg1.example.com/apple-app-site-associationHTTPS在没有任何重定向的情况下访问.
该文件如下所示:
{
"applinks": {
"apps": [ ],
"details": [
{
"appID": "{app_prefix}.{app_identifier}",
"paths": [ "/path/to/content", "/path/to/other/*", "NOT /path/to/exclude" ]
},
{
"appID": "TeamID.BundleID2",
"paths": [ "*" ]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
在演示文件例子
{
"applinks": {
"apps": [],
"details": [
{
"appID": "M8HBL5W4VV.com.Universal-Links",
"paths": [ "/iOS-Universal-Links/*"]
}
]
}
}
Run Code Online (Sandbox Code Playgroud)
注意 - 不要附加.json到apple-app-site-association文件名.
键如下::
apps应该有一个空数组作为其值,并且它必须存在.这就是Apple想要它的方式.
details:是一个字典数组,一个用于网站支持的每个iOS应用程序.每个字典都包含有关应用程序,团队和软件包ID的信息.
有三种方法可以定义路径::
Static整个支持的路径都是硬编码的,用于标识特定链接,例如/ static/terms
Wildcards:A*可用于匹配动态路径,例如/ books/*可以匹配任何作者页面的路径.?在特定的路径组件内部,例如books/1?可用于匹配ID以1开头的任何书籍.
Exclusions:在NOT前面添加路径,不包括该路径的匹配.
数组中提到路径的顺序很重要.早期指数具有更高的优先级.路径匹配后,评估将停止,其他路径将被忽略.每条路径都区分大小写.
应用程序支持的每个域都需要提供自己的apple-app-site-association文件.如果每个域提供的内容不同,则文件的内容也将更改以支持相应的路径.否则,可以使用相同的文件,但需要在每个支持的域中访问它.
使用Apple App搜索验证工具验证您的服务器
测试iOS 9搜索API的网页.输入网址,Applebot会抓取您的网页,并展示如何优化以获得最佳效果
https://search.developer.apple.com/appsearch-validation-tool/
网站代码可以在https://github.com/vineetchoudhary/iOS-Universal-Links/tree/gh-pages找到gh-pages分支
HTTPS服务器的)注意:如果服务器用于HTTPS提供内容并跳转到"应用程序设置"指南,则可以跳过此部分.
如果您的应用面向iOS 9并且您的服务器用于HTTPS提供内容,则无需对该文件进行签名.如果不是(例如,在iOS 8上支持Handoff时),则必须使用SSL来自认可的证书颁发机构的证书进行签名.
注意:这不是Apple提供的将应用程序提交到App Store的证书.它应该由第三方提供,并且建议使用您用于HTTPS服务器的相同证书(尽管不是必需的).
要对文件进行签名,请首先创建并保存它的简单.txt版本.接下来,在终端中,运行以下命令:
cat <unsigned_file>.txt | openssl smime -sign -inkey example.com.key -signer example.com.pem -certfile intermediate.pem -noattr -nodetach -outform DER > apple-app-site-association
Run Code Online (Sandbox Code Playgroud)
这将在当前目录中输出签名文件.的example.com.key,example.com.pem以及intermediate.pem是将提供给您的发证机构的文件.
注意:如果文件是无符号的,它应该有一个Content-Type的application/json.否则,它应该是application/pkcs7-mime.
如何支持iOS App和设置服务器中的Universal Links?
| 归档时间: |
|
| 查看次数: |
17739 次 |
| 最近记录: |