码迷,mamicode.com
首页 > 移动开发 > 详细

Android APP启动页面动态加载全部权限

时间:2018-02-07 00:53:35      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:dep   mat   github   ant   send   hone   说明   代码   手动   

一、写在前面

6.0以上动态加载权限加载的是,需要用户手动赋予的权限( Dangerous Permissions),只有这些,其他权限不用加载

所属权限组 权限
日历 READ_CALENDAR
日历 WRITE_CALENDAR
相机 CAMERA
联系人 READ_CONTACTS
联系人 WRITE_CONTACTS
联系人 GET_ACCOUNTS
位置 ACCESS_FINE_LOCATION
位置 ACCESS_COARSE_LOCATION
麦克风 RECORD_AUDIO
电话 READ_PHONE_STATE
电话 CALL_PHONE
电话 READ_CALL_LOG
电话 WRITE_CALL_LOG
电话 ADD_VOICEMAIL
电话 USE_SIP
电话 PROCESS_OUTGOING_CALLS
传感器 BODY_SENSORS
短信 SEND_SMS
短信 RECEIVE_SMS
短信 READ_SMS
短信 RECEIVE_WAP_PUSH
短信 RECEIVE_MMS
存储 READ_EXTERNAL_STORAGE
存储 WRITE_EXTERNAL_STORAGE

二、使用的框架RxPermissions2

build.gradle文件中
在dependencies {}中添加依赖
compile ‘io.reactivex.rxjava2:rxandroid:2.0.1‘
compile ‘io.reactivex.rxjava2:rxjava:2.0.1‘
compile ‘com.tbruyelle.rxpermissions2:rxpermissions:0.9.5@aar‘

三、关键代码
 1 /**
 2  * 权限列表
 3  */
 4 String[] permissions = new String[]{
 5         Manifest.permission.CAMERA,
 6         Manifest.permission.READ_PHONE_STATE,
 7         Manifest.permission.WRITE_EXTERNAL_STORAGE,
 8         Manifest.permission.READ_EXTERNAL_STORAGE
 9 };
10 
11 /**
12  * 请求权限
13  */
14 private void requestPermissions() {
15     RxPermissions rxPermission = new RxPermissions(this);
16     rxPermission
17             .request(permissions)//多个权限用","隔开
18             .subscribe(granted -> {
19                 if (granted) {
20                     //获得了所有权限
21                    textView.setAnimation(animationSet);
22                 } else {
23                     //至少有一个权限没有获得
24                     Toast.makeText(SplashActivity.this,"请给应用赋予全部权限,否则无法使用",Toast.LENGTH_SHORT).show();
25                     finish();
26                 }
27             });
28 
29 }

四、该框架升级比较快,网上很多写这个框架的博文都并不实用,还是要注意其github网站说明文档

地址:https://github.com/tbruyelle/RxPermissions

Android APP启动页面动态加载全部权限

标签:dep   mat   github   ant   send   hone   说明   代码   手动   

原文地址:https://www.cnblogs.com/jsben/p/8424498.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!