iOS Universal Link 在新 Bundle ID 下无法正常工作?完整解决方案指南
2024-03-17 23:26:55
iOS Universal Link 无法正常工作的新 Bundle ID
引言
iOS Universal Link 是一种机制,它允许用户通过点击链接直接跳转到相关的应用程序或内容。但是,当为应用程序引入新的 Bundle ID 时,Universal Link 可能会停止工作。本文将深入探讨导致此问题的根源并提供详细的解决方案。
问题根源
引入了新的 Bundle ID 后,需要在 Apple 开发者门户网站上为该 ID 启用关联域。此外,Apple App Site Association 文件也需要更新,以包含新的 ID。如果没有完成这些步骤,Universal Link 将无法与新 ID 关联。
解决方案
要解决此问题,需要执行以下步骤:
1. 启用关联域
- 登录 Apple 开发者门户网站。
- 导航至“身份和配置文件”部分。
- 在“关联域”下,添加新的 Bundle ID(格式:com.yourcompany.appname)。
2. 更新 App Site Association 文件
- 在网站根目录创建或更新名为“apple-app-site-association”的文件。
- 将以下内容粘贴到文件中,替换为你的 Bundle ID 和支持的路径:
{
"webcredentials": {
"apps": [
"ZBPP83795K.com.dubizzle.dealerapp"
]
},
"applinks": {
"apps": [],
"details": [
{
"appID": "ZBPP83795K.com.dubizzle.DubizzleHorizontal",
"paths": [
"/m/ar/property-for-rent/short-term-daily/villahouse/*",
"/m/ar/property-for-rent/short-term-daily/apartmentflat/*"
]
},
{
"appID": "ZBPP83795K.com.dubizzle.beta",
"paths": [
"/m/ar/property-for-rent/short-term-daily/villahouse/*",
"/m/ar/property-for-rent/short-term-daily/apartmentflat/*"
]
},
{
"appIDs": ["3AS69H23V9.com.bayut.bayutpro"],
"components": [
{"/": "/profolio/*"},
]
}
]
}
}
3. 更新关联域(Xcode)
- 在 Xcode 项目中,打开“Capabilities”标签。
- 在“Associated Domains”部分,添加新的 Bundle ID。
4. 其他注意事项
- 确保已卸载应用程序并重启设备。
- 尝试更新应用程序版本号。
结论
通过执行上述步骤,你可以修复 Universal Link 无法在新 Bundle ID 下工作的问题。启用关联域和更新 App Site Association 文件至关重要。如果你仍然遇到问题,请查看 Apple 开发者文档以获取更多故障排除提示。
常见问题解答
1. 为什么 Universal Link 在新的 Bundle ID 下不起作用?
如果没有启用关联域或更新 App Site Association 文件,则 Universal Link 将无法与新的 Bundle ID 关联。
2. 如何启用关联域?
通过 Apple 开发者门户网站的“身份和配置文件”部分启用关联域。
3. 如何更新 App Site Association 文件?
在网站根目录创建或更新名为“apple-app-site-association”的文件。
4. 启用关联域后,还需要执行其他步骤吗?
更新关联域后,请在 Xcode 项目中更新关联域。
5. 如果我仍然遇到问题,我该怎么办?
请查看 Apple 开发者文档以获取更多故障排除提示。