iOS通用链接在后台状态下不工作



在react native中,当应用程序处于kill/quiet状态时,iOS Universal链接可以完美工作。我用safari测试了它,但当应用程序位于后台状态时,它只打开不在后台工作的应用程序。我的侦听器不工作。

Linking.addEventListener('url', async (link) => {
console.log('Linking-addEventListener-link', link);
})

请检查此方法是否已添加到AppDelegate.m文件中。

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

对于每个有相同问题的人,只需确保#import <React/RCTLinkingManager.h>仅位于导入的顶部,不要将其添加到任何#if #endif导入条件中。

还添加

- (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];
}

就在@implementation AppDelegate中的最后一个@end之前,希望它能帮助到某人。

最新更新