权限流程图
⼆.Android 权限
我这⾥⾯做的就是⼀个权限获取权限组的制作。
1.封装⼀个Permission实体类
u盘在电脑上读不出来import android.Manifest;
public class Permission {
//⼀共有九个权限
public static final int PERMISSION_LENGTH=9;
// 摄像头权限
怎样练瑜伽
public static final int CODE_CAMERA = 0;
// 传感器权限
public static final int CODE_SENSORS = 1;
// 录制⾳频权限
public static final int CODE_MICROPHONE = 2;
// ⽇历权限
public static final int CODE_CALENDAR = 3;
// 定位权限
public static final int CODE_LOCATION = 4;
/
/ 存储权限
public static final int CODE_STORAGE = 5;
// 通讯录权限
public static final int CODE_CONTACTS = 6;
// 短信权限
public static final int CODE_SMS = 7;
// 电话权限
public static final int CODE_PHONE = 8;
泉州洛阳桥// 摄像头权限
public static final String CAMERA = Manifest.permission.CAMERA;
// 传感器权限
public static final String BODY_SENSORS = Manifest.permission.BODY_SENSORS;
// 录制⾳频权限
public static final String RECORD_AUDIO = Manifest.permission.RECORD_AUDIO;
// ⽇历权限
public static final String READ_CALENDAR = Manifest.permission.READ_CALENDAR;
public static final String WRITE_CALENDAR = Manifest.permission.WRITE_CALENDAR;
// 定位权限
public static final String ACCESS_FINE_LOCATION = Manifest.permission.ACCESS_FINE_LOCATION;踩水
public static final String ACCESS_COARSE_LOCATION = Manifest.permission.ACCESS_COARSE_LOCATION; // 存储权限
public static final String READ_EXTERNAL_STORAGE = Manifest.permission.READ_EXTERNAL_
STORAGE; public static final String WRITE_EXTERNAL_STORAGE = Manifest.permission.WRITE_EXTERNAL_STORAGE; // 通讯录权限
public static final String READ_CONTACTS = Manifest.permission.READ_CONTACTS;
public static final String WRITE_CONTACTS = Manifest.permission.WRITE_CONTACTS;
public static final String GET_ACCOUNTS = Manifest.permission.GET_ACCOUNTS;
// 短信权限
public static final String SEND_SMS = Manifest.permission.SEND_SMS;
public static final String RECEIVE_SMS = Manifest.permission.RECEIVE_SMS;
public static final String READ_SMS = Manifest.permission.READ_SMS;
public static final String RECEIVE_WAP_PUSH = Manifest.permission.RECEIVE_WAP_PUSH;
public static final String RECEIVE_MMS = Manifest.permission.RECEIVE_MMS;
// 电话权限
public static final String READ_PHONE_STATE = Manifest.permission.READ_PHONE_STATE;
public static final String CALL_PHONE = Manifest.permission.CALL_PHONE;
public static final String READ_CALL_LOG = Manifest.permission.READ_CALL_LOG;
public static final String WRITE_CALL_LOG = Manifest.permission.WRITE_CALL_LOG;
public static final String ADD_VOICEMAIL = Manifest.permission.ADD_VOICEMAIL;
public static final String USE_SIP = Manifest.permission.USE_SIP;
public static final String PROCESS_OUTGOING_CALLS = Manifest.permission.PROCESS_OUTGOING_CALLS; // 权限组
大口径火炮public static final class Group {
public static final String[] CAMERA = new String[]{Permission.CAMERA};
public static final String[] SENSORS = new String[]{Permission.BODY_SENSORS};
很的笔画顺序
public static final String[] MICROPHONE = new String[]{Permission.RECORD_AUDIO};
public static final String[] CALENDAR = new String[]{
Permission.READ_CALENDAR,
Permission.WRITE_CALENDAR};
public static final String[] LOCATION = new String[]{
Permission.ACCESS_FINE_LOCATION,
Permission.ACCESS_COARSE_LOCATION};
public static final String[] STORAGE = new String[]{
Permission.READ_EXTERNAL_STORAGE,
Permission.WRITE_EXTERNAL_STORAGE};
public static final String[] CONTACTS = new String[]{
Permission.READ_CONTACTS,
Permission.WRITE_CONTACTS,
Permission.GET_ACCOUNTS};
public static final String[] SMS = new String[]{
Permission.SEND_SMS,
Permission.RECEIVE_SMS,
Permission.READ_SMS,
Permission.RECEIVE_WAP_PUSH,
Permission.RECEIVE_MMS};
枯藤老树昏鸦
public static final String[] PHONE = new String[]{
Permission.READ_PHONE_STATE,
Permission.CALL_PHONE,
Permission.READ_CALL_LOG,
Permission.WRITE_CALL_LOG,
Permission.ADD_VOICEMAIL,
Permission.USE_SIP,
Permission.PROCESS_OUTGOING_CALLS};附属内驱力
}
// 根据权限code返回相应的权限组
public static String[] getPermissions(int requestCode){
switch (requestCode){
ca Permission.CODE_CAMERA:
return Permission.Group.CAMERA;
ca Permission.CODE_SENSORS:
return Permission.Group.SENSORS;
ca Permission.CODE_MICROPHONE:
return Permission.Group.MICROPHONE;
ca Permission.CODE_CALENDAR:
return Permission.Group.CALENDAR;
ca Permission.CODE_LOCATION:
return Permission.Group.LOCATION;
ca Permission.CODE_STORAGE:
return Permission.Group.STORAGE;
ca Permission.CODE_CONTACTS:
return Permission.Group.CONTACTS;
ca Permission.CODE_SMS:
return Permission.Group.SMS;
ca Permission.CODE_PHONE:
return Permission.Group.PHONE;