iOS开发-iOS8.0之后获取用户通知权限
来源:互联网 发布:怎么注册企业淘宝店铺 编辑:程序博客网 时间:2024/05/20 17:23
现如今的iOS开发中,除了大厂的老程序还需要兼容iOS8之前的系统版本之外,新项目基本都只支持到iOS 8 了, 这就意味着之前版本获取用户通知权限的方式不再试用,系统文件是这么描述的
// Returns the enabled types, also taking into account any systemwide settings; doesn't relate to connectivity.- (UIRemoteNotificationType)enabledRemoteNotificationTypes NS_DEPRECATED_IOS(3_0, 8_0, "Use -[UIApplication isRegisteredForRemoteNotifications] and UserNotifications Framework's -[UNUserNotificationCenter getNotificationSettingsWithCompletionHandler:] to retrieve user-enabled remote notification and user notification settings") __TVOS_PROHIBITED;
这个属性在iOS 8之后便不再被支持,因此我们也不好再通过该属性进行通知权限的获取。
iOS 8之后获取通知权限的方法是:
UIUserNotificationSettings *settings = [[UIApplication sharedApplication] currentUserNotificationSettings]; /* settings.types 有以下几种状态 0 => none 不允许通知 UIUserNotificationTypeNone 1 => badge 只允许应用图标标记 UIUserNotificationTypeBadge 2 => sound 只允许声音 UIUserNotificationTypeBadge 3 => sound + badge 允许声音+应用图标标记 4 => alert 只允许提醒 UIUserNotificationTypeAlert 5 => alert + badge 允许提醒+应用图标标记 6 => alert + sound 允许提醒+声音 7 => alert + sound + badge 三种都允许 */
于是,获取后,我们就可通过types的值来判断用户是否开启了允许通知和开启的何种通知,之后的操作就请大家按自己需要进行了,这里再加一个跳转到设置里打开自己程序对应设置项的步骤:
NSURL *settingURL = [NSURL URLWithString:UIApplicationOpenSettingsURLString]; [[UIApplication sharedApplication] openURL:settingURL];
这里所有操作仅限于iOS 8之后,如果项目需要兼容之前版本,请自行查找其他文章。
阅读全文
1 0
- iOS开发-iOS8.0之后获取用户通知权限
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS iOS8注册通知
- iOS8以后推送通知需要访问权限
- ios8之后的CLLOCATION定位权限申请
- android获取通知权限
- IOS开发之IOS8.0最新UIAlertController
- iOS开发 iOS8 适配
- ios8之后的获取位置更新
- 【IOS】IOS8推送消息注册 通知
- iOS本地通知(iOS8改变)
- ios远程通知,兼容ios7 ios8
- linux上进程状态查询
- wireshark tcp 协议分析
- Kotlin 入门初体验
- openstack使用cloud-init进行初始化
- C语言之快速排序法学习笔记
- iOS开发-iOS8.0之后获取用户通知权限
- MySql按日期进行统计(前一天、本周、某一天)
- How to disable automatic updates on Fedora 25?
- KMP基础
- java算法
- 期刊整理(含impact)
- 解决import theano的错误
- javaWEB解决表单重复提交的问题(原理)
- 通过RGB或YUV改变图像的色度和饱和度