Parse platform 使用Swift 2将不允许iOS 8设备注册推送通知

Parse platform 使用Swift 2将不允许iOS 8设备注册推送通知,parse-platform,ios8,swift2,ios9,xcode7,Parse Platform,Ios8,Swift2,Ios9,Xcode7,我正在使用Xcode 7和Parse为iOS配置推送通知。这些通知在运行iOS 9的设备上运行良好 但是,在使用iOS 8的设备上运行应用程序时,我遇到了问题。我无法获取警报视图,用户可以在该视图中选择允许来自应用程序X的通知 但是,当用户选择加入推送通知并且设备使用有效的设备令牌成功注册安装对象时,将成功调用设备令牌注册调用。通知也被发送到设备 如果我进入“设置->通知->我的应用程序”并打开或关闭通知,通知仍在发送,这并没有什么区别 这是我用来注册通知的代码: 在stackoverflow上

我正在使用Xcode 7和Parse为iOS配置推送通知。这些通知在运行iOS 9的设备上运行良好

但是,在使用iOS 8的设备上运行应用程序时,我遇到了问题。我无法获取警报视图,用户可以在该视图中选择允许来自应用程序X的通知

但是,当用户选择加入推送通知并且设备使用有效的设备令牌成功注册安装对象时,将成功调用设备令牌注册调用。通知也被发送到设备

如果我进入“设置->通知->我的应用程序”并打开或关闭通知,通知仍在发送,这并没有什么区别

这是我用来注册通知的代码:


在stackoverflow上找到解决方案。。。在运行早于iOS 9版本的设备上,只发送一次通知注册

正如这里的另一个用户所回答的

首次启用推送功能的应用程序注册推送通知时,iOS会询问用户是否希望接收该应用程序的通知。用户响应此警报后,除非设备已还原或应用程序已卸载至少一天,否则不会再次显示此警报

如果您想模拟应用程序的首次运行,可以将应用程序卸载一天。通过将系统时钟向前拨一天或更长时间,完全关闭设备,然后重新打开设备,您可以在不实际等待一天的情况下实现后者

参考链接:

let settings = UIUserNotificationSettings(forTypes: UIUserNotificationType([.Alert, .Badge, .Sound]), categories: nil)
    application.registerUserNotificationSettings(settings)
    application.registerForRemoteNotifications()