我想确定某位用户是否曾收到过请求registerUserNotificationSettings
UIUserNotificationSettings
的提醒。
例如,在访问照片时,可以确定是否有访问照片的请求以及授予PHPhotoLibrary.authorizationStatus()
的权限。它返回的状态为.Authorized
,.Denied
,.Restricted
,.NotDetermined
。如果到目前为止没有请求,则会返回 .NotDetermined
。
同样,在第一次注册通知并获得用户首次UIApplication.sharedApplication().registerUserNotificationSettings
的权限时,可以确定已注册的通知类型,.Badge
,.Alert
,{ {1}},.Sound
。 (注意:.None
可能意味着没有请求或已发出请求,但用户已选择没有通知。)
问题:
但 有没有办法确定之前是否曾调用
.None
? 即是否相当于照片registerUserNotificationSettings
?
答案 0 :(得分:1)
当您致电registerUserNotificationSettings
时,UIApplicationDelegate
方法:
func application(_ application: UIApplication, didRegister notificationSettings: UIUserNotificationSettings)
将调用让您知道结果。使用此方法保存相关的状态信息,以便下次应用程序运行时,您知道它是否已被调用过。