Android permission
2016-04-20 15:08
513 查看
android.Manifest包含了Android的所有权限。设置权限需要在:
1, AndroidManifest.xml中添加<uses-permission>
2,有些app可以在app info控制某些权限(如sd卡的读写权限)的开启,若没开启需要弹出提示框开启权限。
> 判断权限是否允许
类android.support.v4.content.PermissionChecker封装了判断权限状态的一些接口,如判断读权限是否开启,则可用如下方法:
int status = PermissionChecker.checkSelfPermission(context, Manifest.
boolean isGranted = (status == PermissionChecker.PERMISSION_GRANTED);
> 若权限未允许,则弹出提示框
ActivityCompat.requestPermissions(activity, permissions, requestCode);
> 在所有permissions提示框选择完以后,监听的允许/拒绝结果,需要复写Activity的onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)方法,grantResults即为监听的结果。
> 如果grantResults含子项结果不为PermissionChecker.PERMISSION_GRANTED,则可跳转到app info直接控制权限的开关。跳转到app info有2种方式:一、根据action:包管理器PackageManager.queryIntentActivities可判断该app是否存在,存在则可直接将action封装成Intent启动;二、根据包名:Intent(String action, Uri uri),uri = Uri.parse("package:"
+ context.getPackageName());
1, AndroidManifest.xml中添加<uses-permission>
2,有些app可以在app info控制某些权限(如sd卡的读写权限)的开启,若没开启需要弹出提示框开启权限。
> 判断权限是否允许
类android.support.v4.content.PermissionChecker封装了判断权限状态的一些接口,如判断读权限是否开启,则可用如下方法:
int status = PermissionChecker.checkSelfPermission(context, Manifest.
boolean isGranted = (status == PermissionChecker.PERMISSION_GRANTED);
> 若权限未允许,则弹出提示框
ActivityCompat.requestPermissions(activity, permissions, requestCode);
> 在所有permissions提示框选择完以后,监听的允许/拒绝结果,需要复写Activity的onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults)方法,grantResults即为监听的结果。
> 如果grantResults含子项结果不为PermissionChecker.PERMISSION_GRANTED,则可跳转到app info直接控制权限的开关。跳转到app info有2种方式:一、根据action:包管理器PackageManager.queryIntentActivities可判断该app是否存在,存在则可直接将action封装成Intent启动;二、根据包名:Intent(String action, Uri uri),uri = Uri.parse("package:"
+ context.getPackageName());
相关文章推荐
- Android开发新手看过来,这里有很多能解决你的问题
- android 模拟器访问本地服务器接口api
- android ---Drawable Mutations笔记
- Android Gradle
- Android利用ZXing生成带LOGO的二维码图片
- Android Universal Image Loader 源码分析
- Android Studio删除Module
- Android,限制list不为空的条件
- Android studio如何显示行号
- 整理仿小米卸载动画打包成jar包直接使用(转载)
- 用Android Studio在windows下面查看android源码
- Android studio怎么创建shape的XML文件
- AndroidSwipeLayout:最强大的 Swipe Layout
- android 自定义AlertDialog(一段)
- android 中获取视频文件的缩略图(非原创)
- ndk配置+android jni开发笔记
- 从JAVA到Android开发
- Android基础--调用系统相机,打开相册,裁剪图片并展示到界面
- android开发环境
- android开发游记:ItemTouchHelper 使用RecyclerView打造可拖拽的GridView