【问题标题】:Universal link is not working with react native IOS通用链接不适用于反应原生 IOS
【发布时间】:2021-03-04 07:49:26
【问题描述】:

我正在尝试在我的 react native 项目中集成通用链接,它在 android 中可以正常工作,而在 IOS 中它不能正常工作,但深度链接可以正常工作。

当我尝试打开 https url ex: https:example.com 时,它打开的是 safari,它没有重定向到 IOS 应用程序

{
 "applinks": {
 "apps": [],
 "details": [
  {
    "appID": "<Team_ID>.xxx.xxxxx.xxxx.xx.xx",
    "paths": [
      "NOT /_/*",
      "/*"
    ]
  }
 ]
}}

我已将以下代码添加到 AppDelegate.m

 - (BOOL)application:(UIApplication *)application
     openURL:(NSURL *)url
     options:(NSDictionary<UIApplicationOpenURLOptionsKey,id> *)options
  {
     return [RCTLinkingManager application:application openURL:url 
   options:options];
   }

  - (BOOL)application:(UIApplication *)application continueUserActivity: 
 (nonnull NSUserActivity *)userActivity
     restorationHandler:(nonnull void (^) 
  (NSArray<id<UIUserActivityRestoring>> * _Nullable))restorationHandler
   {
    return [RCTLinkingManager application:application
                  continueUserActivity:userActivity
                    restorationHandler:restorationHandler];
  }
    

我还在苹果开发者中启用了关联域

知道是否缺少某些东西吗?

我正在使用 react native v0.63.3

【问题讨论】:

  • 不确定你的 json 是什么,但如果这是你的站点关联文件格式不正确developer.apple.com/documentation/bundleresources/applinks
  • @NicolasBraun 这种格式也不起作用
  • 您可以将链接粘贴到您的托管关联文件吗?此外,如果您的域包括 www。不要在权利中忘记它们
  • @NicolasBraun 域不包括 www。并且新的 apple-app-site-association 是 { "applinks": { "details": [ { "appIDs": [ "teamID.xxx.xxxxxx.xxx.xx.xx" ], "components": [ { " /": "/application/*", "comment": "匹配任何以 /application/ 开头的 URL" } ] } ] } }
  • @NicolasBraun aasa-validator branch.io/resources/aasa-validator 为以下结果提供绿色条: - branch.io/resources/aasa-validator - 您的文件通过 HTTPS 提供。 - 您的服务器不会返回大于 400 的错误状态代码。 - 找到了您的文件的“内容类型”标头 :) - 您的 JSON 已通过验证。

标签: ios xcode react-native


【解决方案1】:

请首先确认:

  1. 您的apple-app-site-association 文件位于&lt;domain&gt;/.well-known/apple-app-site-association 路径下并且可以访问。
  2. 然后使用这种格式制作文件:https://developer.apple.com/documentation/xcode/supporting-associated-domains
  3. 最后在apple-app-site-association更新后等待5分钟,从模拟器中删除应用重新安装,然后就可以测试了。

【讨论】:

    猜你喜欢
    • 2020-09-27
    • 1970-01-01
    • 1970-01-01
    • 2017-11-16
    • 2019-12-25
    • 2020-03-14
    • 2021-01-10
    • 1970-01-01
    • 2018-04-11
    相关资源
    最近更新 更多