我已经实现了apple-app-site-association
与我的iOS应用程序的深层链接。
我创建了没有扩展名的.JSON文件,并放置在我网站的根目录下。
现在,我可以在任何浏览器上看到该文件为http://viralpatel.net/blogs/freemaker-template-hello-world-tutorial/。
以下是apple-app-site-association文件中的json正文 -
{
"applinks": {
"apps": [],
"details": [
{
"appID": "AppID.bundleIdentifier",
"paths": [ "*"]
}
]
}
}
仅供参考我在我的网站内添加了以下内容(angular.js).htaccess -
<FilesMatch "^apple-app-site-association$"> ForceType application/json </FilesMatch>
我已经启用了&#34;关联域名&#34;在Xcode和developer.apple.com中。
但是,当我尝试安装新版本时,它无法正常工作。
通过挖掘设备日志,我收到以下错误。 />请看看并帮助我解决我的错误。
[SWC] ### Bad apple-app-site-association JSON:错误 Domain = NSCocoaErrorDomain Code = 3840&#34; JSON文本没有以 数组或对象以及允许未设置片段的选项。&#34; UserInfo = {NSDebugDescription = JSON文本不是以数组或 允许片段未设置的对象和选项。}
答案 0 :(得分:1)
将.well-known/
添加到您的路径:
https://<fully qualified domain>/.well-known/apple-app-site-association
来自https://developer.apple.com/documentation/safariservices/supporting_associated_domains_in_your_app
答案 1 :(得分:0)
该文件已正确托管,如使用:
确认curl -I https://pravin-dev.slicepay.in/apple-app-site-association
您还可以使用Apple's Applebot抓取您的网站以验证Apple-app-site-association。但是,这只会验证您的应用是否有效。
问题可能与您的关联文件无关。您应该验证您的应用确实正在检查https://pravin-dev.slicepay.in/apple-app-site-association而不是https://slicepay.in/apple-app-site-association。仔细检查您的功能的关联域部分中的applinks,并正确生成.entitlements文件。您正在使用pravin-dev子域 - 如果未指定,则您的应用可能无法查找正确的位置。
您可能知道必须卸载该应用以重新检查apple-app-site-association。
答案 2 :(得分:0)
我也有这个;文件结构正确,无论是否使用 .well-known 都可以访问,权利是正确的...
...事实证明,关闭和打开我的设备解决了这个问题。我认为 iOS 会在重启时重新获取应用程序的通用链接。
如果所有其他方法都失败了,请尝试将其关闭并重新打开。
答案 3 :(得分:-3)
服务器似乎以某种方式将文件作为错误类型提供。如果您尝试在Web浏览器(https://branchmaps.app.link/apple-app-site-association)中加载正常工作的AASA文件,您将看到它立即下载并且生成的文件没有类型。您的文件显示在浏览器中,下载后会显示JSON文件类型。
如果要将文件保存为apple-app-site-association.json
然后删除扩展名,请尝试直接从Atom / Sublime /无文件名保存它,以确保操作系统不嵌入元数据。
您还可以使用免费的深层链接平台,例如Branch.io(完全披露:我在分支机构团队中),而不需要处理此服务器配置:)