【问题标题】:Handle deep links with multiple environments for the same app on iOs using react-native使用 react-native 在 iOs 上处理同一个应用程序的多个环境的深层链接
【发布时间】: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


【解决方案1】:

您必须指定哪个应用程序要打开哪个路径

例如,您的域是 example.com

您必须在 apple-app-site-association 文件中为 dev 和 prod 应用程序指定不同的路径模式

例如,您可以更新您的apple-app-site-association 文件,如下所示

{
    "applinks": {
        "apps": [],
        "details": [
            {
                "appID": "1234.com.myapp.dev",
                "paths": ["/dev/*"]
            },
            {
                "appID": "1234.com.myapp.prod",
                "paths": ["/prod/*"]
            },
        ]
    }
}

现在,假设您点击下面的网址,您将被定向到 cmets 中提到的应用程序

【讨论】:

    猜你喜欢
    • 2019-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 1970-01-01
    相关资源
    最近更新 更多