gkl*_*lka 8 objective-c push-notification apple-push-notifications ios ios8
我开发了一个应用程序,它围绕推送通知构建.仅当用户到达注册过程的某个点时,应用才会请求通知权限.我已经设法做了以下事情:
NSUserDefaults变量,指示是否需要在启动时注册推送(默认情况下:不)-registerForRemoteNotificationTypes:在iOS 7和-registerUserNotificationSettings:iOS 8上调用除非用户已启用推送通知,然后稍后在"设置"中禁用推送通知,否则此工作正常.在这种情况下,我尝试在启动时重新注册Push,它既不调用-application:didRegisterForRemoteNotificationsWithDeviceToken也不调用-application:didFailToRegisterForRemoteNotificationsWithError.
其他信息,iOS 8 -isRegisteredForRemoteNotifications也会返回YES.(我没有测试,但假设它-enabledNotificationTypes适用于iOS 7.)
如何检测此方案并向用户显示一个请求者,要求他在"设置"中重新启用通知?
[[UIApplication sharedApplication] isRegisteredForRemoteNotifications];
Run Code Online (Sandbox Code Playgroud)
返回一个布尔值,指示应用程序当前是否已注册远程通知.
声明SWIFT func isRegisteredForRemoteNotifications() - > Bool OBJECTIVE-C - (BOOL)isRegisteredForRemoteNotifications返回值如果应用程序已注册远程通知并收到其设备令牌,则返回值;如果未发生注册,失败或已被拒绝,则返回NO用户.
讨论此方法仅反映在您调用registerForRemoteNotifications方法时开始的远程注册过程的成功完成.此方法无法反映推送通知是否因连接问题而实际可用.此方法返回的值考虑了用户接收推送通知的首选项.
可用性适用于iOS 8.0及更高版本.
我会向Apple提交一份错误报告.
| 归档时间: |
|
| 查看次数: |
2437 次 |
| 最近记录: |