美文网首页
部分高版本Android系统通知栏检测需要适配 OPPO FIN

部分高版本Android系统通知栏检测需要适配 OPPO FIN

作者: wlssing | 来源:发表于2018-10-29 14:54 被阅读0次
    /**
         * 是否打开通知栏开关
         * @param context
         * @return
         */
        public static boolean isNotificationEnabled(Context context) {
    
            try {
    
                //4.3以上版本能获取到通知栏状态
                if(Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT){//api19+
                    return NotificationManagerCompat.from(ftalkApp.appContext()).areNotificationsEnabled();
                }else if(Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN)
                {
                    Object localObject = context
                            .getSystemService(Context.APP_OPS_SERVICE);
                    Class localClass = localObject.getClass();
                    Class[] arrayOfClass = new Class[3];
                    arrayOfClass[0] = Integer.TYPE;
                    arrayOfClass[1] = Integer.TYPE;
                    arrayOfClass[2] = String.class;
                    Method localMethod = localClass.getMethod(CHECK_OP_NO_THROW,arrayOfClass);
    
                    Field opPostNotificationValue = localClass.getDeclaredField(OP_POST_NOTIFICATION);
                    int value = (Integer) opPostNotificationValue.get(Integer.class);
                    Object[] arrayOfObject = new Object[3];
                    arrayOfObject[0] = value;
                    arrayOfObject[1] = Integer.valueOf(Binder.getCallingUid());
                    arrayOfObject[2] = context.getPackageName();
                    int j = ((Integer) localMethod.invoke(localObject,
                            arrayOfObject)).intValue();
                    return j == 0;
                }else {
                    return true;
                }
    
    
            } catch (Exception e) {
                e.printStackTrace();
            }
            return true;
        }
    
    

    相关文章

      网友评论

          本文标题:部分高版本Android系统通知栏检测需要适配 OPPO FIN

          本文链接:https://www.haomeiwen.com/subject/uopbtqtx.html