zoukankan      html  css  js  c++  java
  • swift 和 OC 判断用户是否允许接收推送通知

    #pragma mark --------------- 判断用户是否允许接收通知    oc

    - (BOOL)isUserNotificationEnable {

        BOOL isEnable = NO;

        if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0f) { // iOS版本 >=8.0 处理逻辑

            UIUserNotificationSettings *setting = [[UIApplication sharedApplication] currentUserNotificationSettings];

            isEnable = (UIUserNotificationTypeNone == setting.types) ? NO : YES;

        } else { // iOS版本 <8.0 处理逻辑

            UIRemoteNotificationType type = [[UIApplication sharedApplication] enabledRemoteNotificationTypes];

            isEnable = (UIRemoteNotificationTypeNone == type) ? NO : YES;

        }

        return isEnable;

    }

    #pragma mark --------------- 判断用户是否允许接收通知  swift

        func checkPushNotification(){

            if #available(iOS 10.0, *) {

                UNUserNotificationCenter.current().getNotificationSettings(){ (setttings) in

                    switch setttings.authorizationStatus{

                    case .authorized:

                        print("enabled notification setting启动")

                    case .denied:

                        print("setting has been disabled禁用")

                    case .notDetermined:

                        print("something vital went wrong here出了问题")

                    case .provisional:

                        print("something vital went wrong here出了问题")

                    @unknown default:

                        print("something vital went wrong here出了问题")

                    }

                }

            } else {

                let isNotificationEnabled = UIApplication.shared.currentUserNotificationSettings?.types.contains(UIUserNotificationType.alert)

                if isNotificationEnabled == true{

                    print("enabled notification setting启动通知设置")

                }else{

                    print("setting has been disabled设置已禁用")

                }

            }

            

        }

  • 相关阅读:
    Python:循环语句
    Python:list用法
    ettercap局域网DNS欺骗实现过程
    Linux关于用户信息的一些命令
    业务逻辑漏洞
    Linux安装Sqlmap等工具
    CVE-2015-1635(MS15-034 )进行DOS攻击
    HTTP.SYS远程代码执行漏洞测试(ms15-034)
    爬虫学习笔记
    MSF利用ms17-010漏洞过程记录
  • 原文地址:https://www.cnblogs.com/-ios/p/13064251.html
Copyright © 2011-2022 走看看