从iOS 9开始,我的所有推送通知都会出现两次。我已经看到this和this回答,这两个都表明,我不应该两次致电registerUserNotificationSettings
。我不知道如何确定它是否已被调用。
currentUserNotificationSettings
在尚未调用none
时返回registerUserNotificationSettings
,但如果用户停用推送通知,则会返回none
。因此,如果我在当前isRegisteredForRemoteNotifications
时注册通知设置,则用户可能决定停用推送通知,我会再次呼叫注册,如果用户决定将来再次看到通知,那么他们会再次出现两次。registerUserNotificationSettings
仅适用于远程通知,但我也使用本地通知。我错过了什么吗?我想在application:didFinishLaunchingWithOptions
中调用{{1}}并让系统处理是否显示对话框。我是否必须添加一个标志,是否已经注册了通知设置?这看起来有点像hacky。