解析iOS推送通知已停止到达设备,即使仪表板上有记录

时间:2015-07-07 06:29:10

标签: ios parse-platform push-notification

我正在使用Parse进行推送通知,它一直运行良好,直到几天前我停止接收我的两个iOS设备上的通知(一个运行iOS 8.4,另一个运行8.2)。我可以在Parse.com仪表板上看到通知。但我没有看到他们到达设备上的通知中心。在XCode调试器中,没有看到application.didReceiveRemoteNotification也被调用。奇怪的是,我在iOS 7上运行的iPhone仍然会收到运行与iOS 8相同版本代码的通知。所以对可能出现的问题感到困惑。

过去几天发生了一些事情:

  1. 将其中一部手机升级至iOS 8.4,但通知在8.2设备上无效,因此升级不应成为原因

  2. 将XCode升级到6.4

  3. 8.4设备是一个新设备(在8.3上运行)我刚刚添加到配置文件中。当我将手机连接到XCode时,当我在XCode Identity设置中点击“修复它”按钮时,它有一些问题(我记不起细节了)。然后一段时间后我注意到通知没有通过。我用谷歌搜索并在Preferences-> accounts-> apple ID-> view details-> refresh按钮中找到了刷新我的配置文件的建议。这似乎有效,我再次收到通知。但是一天后它又停止了工作。

  4. 我尝试使用不同的软件包ID(带有一些后缀)创建一个单独的应用程序版本,并通过在info.plist文件中添加另一个URL方案使用相同的Facebook App ID。无法让它工作,因为Facebook登录不断带我回到旧的应用程序,所以我没有完成所有的工作。但我仍然看到一些新的配置文件与新的捆绑ID。所以我在苹果开发者网站会员中心删除了它们,并刷新了XCode中的配置文件以获取更改。

  5. 这就是我所能记住的,而且我不知道哪个动作(如果有的话)导致了问题以及如何修复它。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您是否确认在app app delegate中为iOS 8启用了推送?

  // Register for Push Notitications, if running iOS 8
  if ([application respondsToSelector:@selector(registerUserNotificationSettings:)]) {
    UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert |
                                                    UIUserNotificationTypeBadge |
                                                    UIUserNotificationTypeSound);
    UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNotificationTypes
                                                                             categories:nil];
    [application registerUserNotificationSettings:settings];
    [application registerForRemoteNotifications];
  }
  else {
    // Register for Push Notifications before iOS 8
    [application registerForRemoteNotificationTypes:(UIUserNotificationTypeBadge |
                                                     UIUserNotificationTypeAlert |
                                                     UIUserNotificationTypeSound)];
  }

我也会开始全新的所有证书,应用程序和配置文件,以及.p12文件 - 听起来像是关闭但它是大海捞针。尽职尽责并遵循从A到Z的流程:

https://parse.com/tutorials/ios-push-notifications