【发布时间】: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