我遇到了推送通知问题,它仅影响我运行 iOS 9 的设备:
- 我的应用程序安装在一组设备中。我运行它并使用以下代码注册推送通知:
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/