在好例子网,分享、交流、成长!
您当前所在位置:首页Java 开发实例Android平台开发 → 安卓权限管理(权限申请)

安卓权限管理(权限申请)

Android平台开发

下载此实例
  • 开发语言:Java
  • 实例大小:0.19M
  • 下载次数:20
  • 浏览次数:150
  • 发布时间:2020-08-11
  • 实例类别:Android平台开发
  • 发 布 人:kiocahduaf
  • 文件格式:.zip
  • 所需积分:2
 相关标签: 权限管理 权限 管理 安卓

实例介绍

【实例简介】

【实例截图】

【核心代码】

/**
 * 设备授权
 * ---- android6.0 以前的获取
 * ---- android6.0 之后的版本
 * Created by asus on 2017/7/26.
 */

public class PermissionApply {


    // 定义的 KEY 值不能大于 65536


    // SD卡、创建文件、设备读取授权
    public static final int PERMISSION_KEY = 1020;

    public static final String[] PERMISSION = new String[]{
            Manifest.permission.READ_EXTERNAL_STORAGE,
            Manifest.permission.WRITE_EXTERNAL_STORAGE,
            Manifest.permission.READ_PHONE_STATE,
    };


    // region  // 连接WiFi所需权限

    protected static final int PERMISSION_REQ_CONNECT_WIFI = 3020; // WiFi热点连接和创建权限请求码

    public static final String[] PERMISSION_CONNECT_WIFI = new String[] // 连接WiFi所需权限
            {
                    Manifest.permission.ACCESS_WIFI_STATE,
                    Manifest.permission.ACCESS_FINE_LOCATION, /* android.permission-group.LOCATION 组 */
                    Manifest.permission.ACCESS_COARSE_LOCATION,/* android.permission-group.LOCATION 组 */
                    Manifest.permission.WRITE_EXTERNAL_STORAGE /* android.permission-group.STORAGE 组 */
            };

    // endregion


    // region // 自定义授权


    // region // 拍照授权

    public static final int PERMISSION_READ_CAMERA_KEY = 111;

    public static final String[] PERMISSION_READ_CAMERA = new String[]{
            Manifest.permission.READ_EXTERNAL_STORAGE,
            Manifest.permission.CAMERA
    };

    // endregion

    // region  // 创建便携热点所需权限

    // 创建便携热点权限请求码
    protected static final int PERMISSION_REQ_CREATE_HOTSPOT_KEY = 3021;
    // 创建便携热点所需权限
    public static final String[] PERMISSION_CREATE_HOTSPOT = new String[]
            {
                    Manifest.permission.WRITE_SETTINGS,
                    Manifest.permission.WRITE_EXTERNAL_STORAGE
            };

    // endregion

    // region // 通讯录、SD卡授权、手机型号权限请求码

    public static final int PERMISSION_READ_CONTACTS_and_STORAGE_KEY = 999;

    public static final String[] PERMISSION_READ_CONTACTS_and_STORAGE = new String[]{
            Manifest.permission.READ_CONTACTS,
            // Manifest.permission.ACCESS_FINE_LOCATION, /*定位授权申请*/
            Manifest.permission.READ_EXTERNAL_STORAGE,  /*SD卡授权申请*/
            Manifest.permission.READ_PHONE_STATE,  /*型号授权申请*/
    };

    // endregion

    // endregion


    // region  // 权限申请管理组 : 每一组只要有一个授权,其他会自动默认授权


    // region   android.permission-group.STORAGE 组 读写 SD卡

    public static final int ANDROID_PERMISSION_GROUP_STORAGE_KEY = 1000;

    public static final String[] ANDROID_PERMISSION_GROUP_STORAGE = new String[]
            {
                    Manifest.permission.READ_EXTERNAL_STORAGE, /* 读取 SD卡 */
                    Manifest.permission.WRITE_EXTERNAL_STORAGE /* 创建文件 */
            };

    // endregion

    // region android.permission-group.SMS 组

    public static final int ANDROID_PERMISSION_GROUP_SMS_KEY = 1001;

    public static final String[] ANDROID_PERMISSION_GROUP_SMS = new String[]
            {
                    Manifest.permission.SEND_SMS,/*  */
                    Manifest.permission.RECEIVE_SMS,/*  */
                    Manifest.permission.READ_SMS,/*  */
                    Manifest.permission.RECEIVE_WAP_PUSH,/*  */
                    Manifest.permission.RECEIVE_MMS/*  */
            };

    // endregion

    // region  android.permission-group.SENSORS 组

    public static final int ANDROID_PERMISSION_GROUP_SENSORS_KEY = 1002;

    public static final String[] ANDROID_PERMISSION_GROUP_SENSORS = new String[]
            {
                    Manifest.permission.BODY_SENSORS/*  */
            };

    // endregion

    // region android.permission-group.PHONE 组

    public static final int ANDROID_PERMISSION_GROUP_PHONE_KEY = 1003;

    public static final String[] ANDROID_PERMISSION_GROUP_PHONE = new String[]
            {
                    Manifest.permission.READ_PHONE_STATE, /* 获取设备型号 */
                    Manifest.permission.CALL_PHONE,/* 打电话 */
                    Manifest.permission.READ_CALL_LOG,/* 读写通话记录 */
                    Manifest.permission.WRITE_CALL_LOG,/* 读写通话记录 */
                    Manifest.permission.USE_SIP,/*  */
                    Manifest.permission.PROCESS_OUTGOING_CALLS/*  */
//                    Manifest.permission.ADD_VOICEMAIL,/*  */
            };

    // endregion

    // region android.permission-group.MICROPHONE 组

    public static final int ANDROID_PERMISSION_GROUP_MICROPHONE_KEY = 1004;

    public static final String[] ANDROID_PERMISSION_GROUP_MICROPHONE = new String[]
            {
                    Manifest.permission.RECORD_AUDIO/*  */
            };

    // endregion

    // region android.permission-group.LOCATION 组

    public static final int ANDROID_PERMISSION_GROUP_LOCATION_KEY = 1005;

    public static final String[] ANDROID_PERMISSION_GROUP_LOCATION = new String[]
            {
                    Manifest.permission.ACCESS_FINE_LOCATION,/* 这个权限用于访问GPS定位 */
                    Manifest.permission.ACCESS_COARSE_LOCATION/* 这个权限用于进行网络定位 */
            };

    // endregion

    // region android.permission-group.CONTACTS 组

    public static final int ANDROID_PERMISSION_GROUP_CONTACTS_KEY = 1006;

    public static final String[] ANDROID_PERMISSION_GROUP_CONTACTS = new String[]
            {
                    Manifest.permission.READ_CONTACTS,/* 手机通讯录6.0后需要动态申请 */
                    Manifest.permission.GET_ACCOUNTS,/*  */
                    Manifest.permission.WRITE_CONTACTS/*  */
            };

    // endregion

    // region android.permission-group.CAMERA 组

    public static final int ANDROID_PERMISSION_GROUP_CAMERA_KEY = 1007;

    public static final String[] ANDROID_PERMISSION_GROUP_CAMERA = new String[]
            {
                    Manifest.permission.CAMERA/*  */
            };

    // endregion

    // region android.permission-group.CALENDAR 组

    public static final int ANDROID_PERMISSION_GROUP_CALENDAR_KEY = 1008;

    public static final String[] ANDROID_PERMISSION_GROUP_CALENDAR = new String[]
            {
                    Manifest.permission.READ_CALENDAR,/*  */
                    Manifest.permission.WRITE_CALENDAR/*  */
            };

    // endregion


    // endregion


    // 确认所需权限是否都已授权, 在 onRequestPermissionsResult 方法中判断
    public static boolean verifyPermissions(int[] grantResults) {
        for (int grantResult : grantResults) {
            if (grantResult != PackageManager.PERMISSION_GRANTED) {
                return false;
            }
        }
        return true;
    }


实例下载地址

安卓权限管理(权限申请)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警