我已将我的设备升级到 iOS 9,并将我的 Xcode 环境升级到 7.0 (7A220)。我的应用程序通过以下方式注册通知:
[[UIApplication sharedApplication] registerForRemoteNotifications];
但是,不会调用“didRegisterForRemoteNotificationWithDeviceToken”或“didFailToRegisterForRemoteNotificationsWithError”。此外,我的应用程序没有出现在 Settings->Notifications 部分(这告诉我它甚至没有尝试注册远程/推送通知)
我的 App ID 启用了以下应用程序服务:
在 Xcode 中,启用了以下功能:
这适用于 iOS 8,使用 Xcode 6 构建的应用程序。此外,当使用 Xcode 7 构建时,它不再适用于 iOS 8 设备。
最佳答案
你用模拟器吗?
在模拟器中,不支持远程通知。
示例代码:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let pushSettings = UIUserNotificationSettings(forTypes: [UIUserNotificationType.Badge ,UIUserNotificationType.Sound ,UIUserNotificationType.Alert], categories: nil)
application.registerUserNotificationSettings(pushSettings)
return true
}
func application(application: UIApplication, didRegisterUserNotificationSettings notificationSettings: UIUserNotificationSettings) {
application.registerForRemoteNotifications()
}
func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {
let token=deviceToken.description
print(token)
}
func application(application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: NSError) {
print(error)
}
Xcode 说:
Error Domain=NSCocoaErrorDomain
Code=3010 "REMOTE_NOTIFICATION_SIMULATOR_NOT_SUPPORTED_NSERROR_DESCRIPTION"
UserInfo={NSLocalizedDescription=REMOTE_NOTIFICATION_SIMULATOR_NOT_SUPPORTED_NSERROR_DESCRIPTION}
关于push-notification - 无法注册推送通知(Xcode 7、iOS9),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32705645/