查看: 60|回复: 0

iOS开发之打开系统设置通知权限页面

[复制链接]

2

主题

0

回帖

0

积分

热心网友

金币
0
阅读权限
220
精华
0
威望
0
贡献
0
在线时间
0 小时
注册时间
2011-8-21
发表于 2019-7-24 16:48:00 | 显示全部楼层 |阅读模式
- (void)viewDidAppear:(BOOL)animated 
{
  //首先判断应用通知是否授权,注意iOS10.0之后方法不一样
if (@available(iOS 10.0, *)) { [[UNUserNotificationCenter currentNotificationCenter] getNotificationSettingsWithCompletionHandler:^(UNNotificationSettings * _Nonnull settings) { if (settings.authorizationStatus == UNAuthorizationStatusNotDetermined) { NSLog(@"未选择"); [self opentNotificationAlert]; }else if (settings.authorizationStatus == UNAuthorizationStatusDenied){ NSLog(@"未授权"); [self opentNotificationAlert]; }else if (settings.authorizationStatus == UNAuthorizationStatusAuthorized){ NSLog(@"已授权"); } }]; } else { if ([[UIApplication sharedApplication] currentUserNotificationSettings].types == 0) { [self opentNotificationAlert]; } } }
/** 跳转系统设置方法*/
- (void)opentNotificationAlert
{
/**< 弹出框 */ UIAlertController *alertController = [UIAlertController alertControllerWithTitle:@"推送通知关闭" message:@"请前往打开通知,获取更多精彩瞬间!" preferredStyle:UIAlertControllerStyleAlert]; [alertController addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { }]]; [alertController addAction:[UIAlertAction actionWithTitle:@"确定" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) { [self.presentedViewController dismissViewControllerAnimated:YES completion:nil]; if (@available(iOS 10.0, *)) { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:UIApplicationOpenSettingsURLString] options:@{} completionHandler:nil]; } else { [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=NOTIFICATIONS_ID&path=com.xxx.xxx"]];//prefs:root=服务&path=项目bundleID
     }
  }]; 
  [self presentViewController:alertController animated:YES completion:nil];
}

 



来源:https://www.cnblogs.com/hecanlin/p/11239144.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部