在iOS客户端上,当您首次运行它时,会收到一个UIAlert,要求授予授予访问权限以发送此人通知的权限。
我想知道是否有可能首先:
有没有一种方法可以获取上述两种情况的回调?
非常感谢
在iOS 8和更高版本上,在您的AppDelegate中实现以下方法:
- (void)application:(UIApplication *)application didRegisterUserNotificationSettings:(UIUserNotificationSettings *)notificationSettings {
// You could check here [[UIApplication sharedApplication] currentUserNotificationSettings]
// This is where you set up your local notification
}
此方法是一种UIApplicationDelegate
方法,因此您所需要做的就是在MyAppDelegate.m
文件中实现它。
从文档中:
告诉代表可以使用哪种类型的通知来引起用户的注意。
参数
应用程序:注册用户通知设置的应用程序对象。
notificationSettings:您的应用可用的用户通知设置。
此对象中的设置可能与您最初请求的设置不同。
讨论
使用本地或远程通知向用户发出新信息警报的应用程序必须通过调用应用程序对象的registerUserNotificationSettings:方法来注册他们要使用的通知类型。(在链接到8.0之前的iOS版本上的应用程序中,当您安排本地通知时,注册也可能隐式发生。)您的应用程序请求与用户当前的首选项结合在一起,以确定允许的通知类型并将结果传递给该应用程序notificationSettings参数中的方法。
首次注册应用的首选通知类型时,系统会询问用户是否应允许您的应用传递通知并存储用户的响应。在后续的注册尝试过程中,系统不会提示用户。用户始终可以使用“设置”应用更改通知首选项。
因为用户的首选项可以更改,所以您应始终检查notifySettings参数的内容。这些设置仅控制是向用户通知本地通知还是远程通知。通知仍会在适当的时间传递到您的应用程序。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句