首页 文章

处理程序远程通知背景

提问于
浏览
0

我现在遇到这个问题,我需要处理推送通知的信息,当应用程序在后台时,我的意思是,甚至没有点击通知 . 这意味着必须在后台调用 **application:(UIApplication )application didReceiveRemoteNotification:(NSDictionary )userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler !这是我的代码

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{

    NSLog(@"full message %@", userInfo);
    NSDictionary *aps = [userInfo objectForKey:@"aps"];
    NSLog(@"full aps %@", aps);
    NSString *custom = [userInfo objectForKey:@"custom"];
    NSLog(@"full custom %@",custom);
    completionHandler(UIBackgroundFetchResultNewData);
    [[NSNotificationCenter defaultCenter] postNotificationName:@"notificationRemote" object:nil userInfo:userInfo];
}

我真的需要处理这些信息,以便每当我收到任何通知时将其保存到本地,无论我点击推送通知 .

我搜索并看到我需要内容可用于我的有效负载,但我在Firebase控制台通知中找不到它 .

2 回答

  • 1

    是的,您需要有效负载中的内容可用密钥才能进行静默推送通知 .

    有关FCM的更多信息,U可以看到此链接:Firebase silent apns notification

  • 0

    您可以使用FireBase Cloud 功能创建有效负载并触发通知 . 您可以处理Firebase实时数据库中的事件 . 实时数据库支持onWrite()事件,该事件会在指定的数据库位置中随时触发数据创建,销毁或更改 . 请参阅本教程了解可能对您有帮助的详细信息https://code.tutsplus.com/tutorials/serverless-apps-with-firebase-cloud-functions--cms-28557

相关问题