我的应用程序显示第二次通知iOS 9

时间:2015-11-24 09:29:16

标签: ios objective-c duplicates apple-push-notifications

我收到了重复的通知。用于远程通知和本地通知。

我使用了以下代码

[application registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeAlert|UIUserNotificationTypeBadge|UIUserNotificationTypeSound categories:nil]];

if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0){
    [[UIApplication sharedApplication] registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:(UIUserNotificationTypeSound | UIUserNotificationTypeAlert | UIUserNotificationTypeBadge) categories:nil]];
    [[UIApplication sharedApplication] registerForRemoteNotifications];
}
else{
    [[UIApplication sharedApplication] registerForRemoteNotificationTypes:
     (UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert)];
}

-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{
NSString *strDevicetoken = [[NSString alloc]initWithFormat:@"%@",[[[deviceToken description] stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<>"]] stringByReplacingOccurrencesOfString:@" " withString:@""]];
NSLog(@"devicetoken = %@",strDevicetoken);}

我一直在接收重复的推送通知。

2 个答案:

答案 0 :(得分:3)

我有类似的问题,在我的情况下,问题是调用方法registerUserNotificationSettings:两次。似乎调用此方法超过1次会导致iOS 9上出现重复通知。

因此,如果情况相同,请尝试以下两个步骤:

  1. 删除所有额外的registerUserNotificationSettings:来电 你的代码。
  2. 然后重新安装该应用。
  3. 这应该可以解决问题。

答案 1 :(得分:2)

我认为这是iOS9上的一个错误。我注意到我的应用程序中有很大一部分发送重复通知。 StackoverFlow的iOS应用程序,Apple,iTunes Connect应用程序和其他一些应用程序。很确定你遇到了同样的问题。也许用Apple提供雷达。