这在 iOS 8 和之前的版本中有效,所以它可能是 iOS 9 测试版中的一个错误 - 或者它是一种改变的行为。
在请求用户允许发送本地通知后 -
NSSet *categories = ...;
UIUserNotificationType notificationTypes = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert;
UIUserNotificationSettings *notificationSettings = [UIUserNotificationSettings settingsForTypes:notificationTypes categories:categories];
[[UIApplication sharedApplication] registerUserNotificationSettings:notificationSettings];
并且用户选择“允许”,application:didRegisterUserNotificationSettings:
使用[notificationSettings types] == UIUserNotificationTypeNone
.
但是,下次我运行registerUserNotificationSettings
它将使用正确的权限类型调用。
Apple 的参考资料没有说明任何可能表明这是有意的,因此它可能是一个错误。
任何人都知道是什么问题或如何解决它?