Android 6.0系统动态请求系统相机和读取手机存储权限
2016-11-11 11:25
609 查看
一、请求系统相机权限
1 private static final int TAKE_PHOTO_REQUEST_CODE = 1; 2 3 public static String takePhoto(Context context, int requestCode) { 4 String filePath = ""; 5 if (ContextCompat.checkSelfPermission(context, 6 Manifest.permission.CAMERA) 7 != PackageManager.PERMISSION_GRANTED) { 8 ActivityCompat.requestPermissions((Activity) context, 9 new String[]{Manifest.permission.CAMERA}, 10 TAKE_PHOTO_REQUEST_CODE); 11 } else { 12 Intent intent = new Intent( 13 MediaStore.ACTION_IMAGE_CAPTURE, null); 14 filePath = AppApplication.getInstance().getCachePath() + File.separator + MD5.md5(String.valueOf(System.currentTimeMillis())) + "camera" + ".png"; 15 intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri 16 .fromFile(new File(filePath))); 17 ((Activity) context).startActivityForResult(intent, requestCode); 18 19 } 20 return filePath; 21 }
二、获取相册照片要申请的权限
if (ContextCompat.checkSelfPermission(mContext,Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {ActivityCompat.requestPermissions((Activity) mContext,new String[] { Manifest.permission.READ_EXTERNAL_STORAGE },SELECT_PHOTO_REQUEST_CODE);} else {// 从相册中选择图片Intent intent2 = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);// CHOSE_PIC设置标识((Activity) mContext).startActivityForResult(intent2,CHOSE_PIC);
相关文章推荐
- Android手机获取相机权限终极大招(兼容国产手机小米华为魅族以及6.0以下系统)
- android发送短信填入手机号码,6.0动态请求权限拨打电话
- Android拍照存储文件报open failed: ENOENT (No such file or directory)(适配不同手机的方法)以及6.0动态权限
- Android 6.0 动态请求权限
- Android 6.0动态权限调用相册相机
- android手机系统 6.0后的权限申请问题
- 以调用系统相机拍照为例了解Android 6.0运行时权限
- android 6.0 动态申请权限后 相机的使用核心方法
- Android 6.0 动态权限读取。
- android 请求权限被拒处理方法(使用于6.0以下系统)
- Android 6.0开始动态请求权限
- Android 华为手机存储图片以及下载apk需要申请动态权限
- 定位、读取手机状态等权限在6.0系统不管用
- 魅族 Android 6.0 以上系统获取相机权限的坑
- 关于小米6.0以上系统手机动态获取权限问题
- Android 6.0以上动态相机权限
- Android基于注解的6.0权限动态请求框架详解
- Android 6.0以上系统动态获取权限
- 解决android 6.0 动态相机相册定位权限
- Android 启动系统相机,相册,裁剪图片及6.0权限管理