ios - 如果应用程序在 iOS 9 上处于后台,则不会出现推送通知

标签 ios push-notification ios9

我遇到了推送通知问题,它仅影响我运行 iOS 9 的设备:

  1. 我的应用程序安装在一组设备中。我运行它并使用以下代码注册推送通知:
if ([application respondsToSelector:@selector(registerUserNotificationSettings:)]) {
    UIUserNotificationType userNotificationTypes = (UIUserNotificationTypeAlert | UIUserNotificationTypeBadge | UIUserNotificationTypeSound);
    UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:userNotificationTypes categories:nil];
    [application registerUserNotificationSettings:settings];
    [application registerForRemoteNotifications];
}
  • 该应用会在所有设备上置于后台。
  • 我向所有设备发送推送通知 - 并收到成功的响应。
  • 所有 iOS 8 设备都会在通知中心显示推送通知。
  • iOS 9 设备不会在通知中心显示推送通知。
  • 在任意 iOS 9 设备上随机打开应用程序。显示通知(由 application:didReceiveRemoteNotification: 触发)。
  • iOS 9 有什么变化吗?即使应用程序未激活,如何才能在 iOS 9 上显示推送通知? 我不想使用通知在后台获取任何内容,我只需要显示一条消息。

    最佳答案

    最后,我必须做两件事才能让它对我有用:

    • 在应用程序功能下(在目标设置中)启用后台模式的“远程通知
    • 以高优先级发送通知(当以低优先级发送通知时,应用程序不会在后台处理通知)

    关于ios - 如果应用程序在 iOS 9 上处于后台,则不会出现推送通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33277996/

    相关文章:

    android - 是否有任何理由使用 Google GCM 与 Apple 消息传递来推送通知?

    ios - 使用 Parse 从一个用户向另一个用户发送推送通知

    ios9 UIAlertController uitextfield 太小

    swift - AirPrint (UIPrintInteractionController) 使用 iOS 9、swift 2、XCode 7 打印警告

    ios - 导航 Controller 后退按钮标题显示上一个标题

    ios - Swift:addTarget Action 是否只允许类方法?

    iphone - "Distribution"和 "Release"构建配置有什么区别?

    ios - NSURLConnection 和持久连接

    java - 如何在 Pushwoosh 中处理已删除的应用程序设备 token ?

    javascript - 如何重定向到 Safari 中的 ios 设置在 ios9 中使用 javascript