【发布时间】:2020-01-08 12:00:41
【问题描述】:
我有一个带有多个环境的 react-native 应用程序。
Dev, prod, ... 这意味着我在手机 App Dev、App Prod 上安装了多个应用程序的“副本”。
这些位于不同的包标识符下:
- com.myapp.dev
- com.myapp.prod
我使用深层链接打开应用程序,这在 Android 上非常有效,因为它会询问您要使用哪个应用程序打开它,但在 iOS 上它只会打开第一个安装的应用程序?? ??我找不到路,例如:
- 启动
develop-app://whatever/1并在开发应用程序中打开它 - 启动
prod-app://whatever/1并在 Prod 应用中打开它
我错过了什么?
这是我定义的 url 类型:
apple-app-site-association 文件也如下所示:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "1234.com.myapp.dev",
"paths": ["*"]
},
{
"appID": "1234.com.myapp.prod",
"paths": ["*"]
}
]
}
}
更新
- 我发现的第一个问题是
apple-app-site-association没有使用Content-Type标头,因此应用无法识别该文件。 - 应定义每个环境应识别的路径:
{
"applinks": {
"apps": [],
"details": [
{
"appID": "1234.com.myapp.dev",
"paths": ["/dev/*"]
},
{
"appID": "1234.com.myapp.prod",
"paths": ["/prod/*"]
}
]
}
}
- 现在我可以按预期看到网站顶部的横幅
Open with App Dev
【问题讨论】:
-
你能在这里分享你的
apple-app-site-association文件吗? -
太棒了!所以现在您的问题已经解决了,请您花点时间将我的回答标记为已接受并点赞,以便有相同问题的每个人都可以在这里找到它?
标签: android ios react-native deep-linking