0

我连续向 APNS 发送 10 条消息。当应用程序处于后台时,我会收到所有消息。但是当应用程序在前台时,我会收到 8 条通知。

这里有什么问题?

这是我的代码,非常简单:

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{
    NSLog(@"Test push...");
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:(UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeSound|UIRemoteNotificationTypeNone)];
    [self checkForRegisteredUser];
    [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
    return YES;
}
4

1 回答 1

0

不知道这会是你要找的,

这是推送通知的工作原理,

因此,当您的应用程序处于后台时,您的应用程序将永远不会收到来自 APNs 的推送通知,但它会随着消息从服务器发送到您的通知托盘。

但是,如果您的应用程序在前台。您的应用程序委托中的方法

- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{

将收到通知并执行您在其中定义的必要操作。

如果您没有收到通知,则需要检查网络连接。

我已经开发了一个与您类似的应用程序,并且它的工作正常,正如您所期望的那样..

于 2013-09-18T15:35:09.083 回答