Abh*_*nav 4 iphone cocoa-touch objective-c push-notification ios
我通过调用以下代码来注册推送通知:
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge|UIRemoteNotificationTypeAlert|UIRemoteNotificationTypeSound];
Run Code Online (Sandbox Code Playgroud)
但在极少数情况下,委托后不会被调用:
- (void)application:(UIApplication *)iApplication didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)iNewDeviceToken {
Run Code Online (Sandbox Code Playgroud)
甚至没有跟随方法被调用:
- (void)application:(UIApplication *)iApplication didFailToRegisterForRemoteNotificationsWithError:(NSError *)iError {
Run Code Online (Sandbox Code Playgroud)
这可能是什么原因.收到设备令牌后,我正在继续我的应用程序流程.因此,在一些罕见的情况下我的应用程序挂起.
任何线索?
小智 9
根据文档,在设备与推送服务器建立持久连接之前,两个回调都不会发生.因此,如果没有可用的wifi或数据连接,则不会发生回调 - 并且apple不会将此视为错误情况.据我所知,导致didFail ...回调的唯一错误是不正确的证书/应用程序权限问题(开发问题),或者用户拒绝权限(尽管我只是偶尔能够重现这个通过更改日期并关闭手机).
| 归档时间: |
|
| 查看次数: |
4062 次 |
| 最近记录: |