推送通知不起作用

时间:2015-11-18 09:13:42

标签: ios iphone push-notification apple-push-notifications

我一直在从Background中删除一个应用程序。然后推送通知,它会显示在我的通知托盘上。当我点击通知时,我的代码工作正常。当我没有点击通知并只是启动应用程序时。我们如何获得通知userinfo。我被卡住了。请帮忙。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    // Override point for customization after application launch.
    self.window=[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    NSDictionary* userInfo =
    [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
    NSLog(@"%@",userInfo);
}
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult))completionHandler
{
    NSLog(@"%@",userInfo);

}

4 个答案:

答案 0 :(得分:1)

简单来说,您无法访问通知的userInfo,当您直接点按“应用”图标时,只有在点击通知栏中的通知时才能获得该通知。

答案 1 :(得分:0)

如果通过点击通知未直接启动应用,则无法从通知中获取信息。很遗憾,您可以在启动应用程序时与远程服务器核对未读通知。

答案 2 :(得分:0)

如果您直接点按应用图标,则无法获取通知对象,您只会收到有关用于打开应用的通知的信息。因此,如果用户打开您的应用,并且您的应用有通知,那么您将无法在应用中检索它们。

您可以跟踪服务器上的通知,并在用户直接从应用程序图标启动时从服务器获取未读通知。因此,服务器跟踪所有通知。 Facebook就是这样做的。

答案 3 :(得分:0)

除非您通过推送通知打开应用程序,否则无法获取通知信息。