[英]Urban Airship deep link on remote notification launch - IOS
我正在使用react-native运行我的ios应用程序,并且目前我的推送通知已成功通过城市飞艇工作。 我也有深层链接工作,但仅在以下几种情况下:
单击城市飞艇的推送通知时,我需要启动该应用程序并执行深层链接,但是现在它仅将启动该应用程序,并且深层链接仅在该应用程序已经在后台时才执行。
这是我在AppDelegate.m中执行城市飞艇通知的代码(仅显示相关代码):
#import "AppDelegate.h"
#import "RCTRootView.h"
#import "RCTLinkingManager.h"
#import <AirshipKit/AirshipKit.h>
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UAirship takeOff];
[UAirship push].userPushNotificationsEnabled = YES;
return YES;
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [RCTLinkingManager application:application openURL:url sourceApplication:sourceApplication annotation:annotation];
}
在上面的代码中,仅在上面列出的两种情况下才调用openURL参数。
忙于处理不同的城市飞艇情况,但无法使它们工作。 UASituation文档
什么时候对您不起作用?
深度链接操作具有默认谓词,该谓词拒绝UASituationForegroundPush
情况。 如果在前台收到推送,那可以防止应用程序自动进行深层链接。 您可以使用以下命令远程谓词:
[[UAirship shared].actionRegistry updatePredicate:nil
forEntryWithName:kUADeepLinkActionDefaultRegistryName];
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.