工具篇——PermissionsDangerousGroupUtil(用于动态权限的申请)

代码如下:

package com.wy.test.other.otherUse;

import android.Manifest;

import android.os.Build;

/**

* 危险权限组工具类

* 用于动态权限的申请

*/

public class PermissionsDangerousGroupUtil {

    public static final String[] CALENDAR;   // 日历

    public static final String[] CAMERA;     // 相机

    public static final String[] CONTACTS;   // 联系人

    public static final String[] LOCATION;   // 位置

    public static final String[] MICROPHONE; // 麦克风

    public static final String[] PHONE;      // 电话

    public static final String[] SENSORS;    // 传感器。

    public static final String[] SMS;        // 短信

    public static final String[] STORAGE;    // 存储。

    static {

        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {

            CALENDAR = new String[]{};

            CAMERA = new String[]{};

            CONTACTS = new String[]{};

            LOCATION = new String[]{};

            MICROPHONE = new String[]{};

            PHONE = new String[]{};

            SENSORS = new String[]{};

            SMS = new String[]{};

            STORAGE = new String[]{};

        } else {

            CALENDAR = new String[]{

                    Manifest.permission.READ_CALENDAR,

                    Manifest.permission.WRITE_CALENDAR};

            CAMERA = new String[]{

                    Manifest.permission.CAMERA};

            CONTACTS = new String[]{

                    Manifest.permission.READ_CONTACTS,

                    Manifest.permission.WRITE_CONTACTS,

                    Manifest.permission.GET_ACCOUNTS};

            LOCATION = new String[]{

                    Manifest.permission.ACCESS_FINE_LOCATION,

                    Manifest.permission.ACCESS_COARSE_LOCATION};

            MICROPHONE = new String[]{

                    Manifest.permission.RECORD_AUDIO};

            PHONE = new String[]{

                    Manifest.permission.READ_PHONE_STATE,

                    Manifest.permission.CALL_PHONE,

                    Manifest.permission.READ_CALL_LOG,

                    Manifest.permission.WRITE_CALL_LOG,

                    Manifest.permission.ADD_VOICEMAIL,

                    Manifest.permission.USE_SIP,

                    Manifest.permission.PROCESS_OUTGOING_CALLS};

            SENSORS = new String[]{

                    Manifest.permission.BODY_SENSORS};

            SMS = new String[]{

                    Manifest.permission.SEND_SMS,

                    Manifest.permission.RECEIVE_SMS,

                    Manifest.permission.READ_SMS,

                    Manifest.permission.RECEIVE_WAP_PUSH,

                    Manifest.permission.RECEIVE_MMS};

            STORAGE = new String[]{

                    Manifest.permission.READ_EXTERNAL_STORAGE,

                    Manifest.permission.WRITE_EXTERNAL_STORAGE};

        }

    }

}

在项目中的应用:

//日历相关的需要申请的动态权限

String[] calendarPermissions = PermissionsDangerousGroupUtil.CALENDAR;

早计划,早准备,早完成。 欢迎关注!交流!Star!

GitHub:https://github.com/wangyang0313

微信公众号:一个灵活的胖子MrWang

CSDN:https://blog.csdn.net/qq941263013

20200430145304899.jpg

你可能感兴趣的:(工具篇——PermissionsDangerousGroupUtil(用于动态权限的申请))