android 图片选择框架 动态权限申请框架 使用

因为android经常使用到添加图片功能,每次自己写都太麻烦,再加上动态权限的获取,非常容易弄混出错,所以整理一下,以后都这么用,慢慢熟悉。

1、图片选择框架用知乎的 Matisse

GitHub - zhihu/Matisse: A well-designed local image and video selector for Android

Matisse 知乎图片选择框架 - 简书

2、动态权限申请用 XmPermissions

GitHub - lhm0603/XmPermissionsProject: Android动态权限申请框架

Android动态权限申请框架_h461415832的博客-CSDN博客_android 权限申请框架

注意事项 : Matisse 需要自己额外再配置provider ,还要自己引入glide依赖,在调用拍照功能的时候 ,用如下方法

MediaStoreCompat mediaStoreCompat = new MediaStoreCompat(MainActivity.this);
mediaStoreCompat.setCaptureStrategy(new CaptureStrategy(true, "PhotoPicker"));//自己设置的provider属性
mediaStoreCompat.dispatchCaptureIntent(MainActivity.this, 2016);
Uri currentPhotoUri = mediaStoreCompat.getCurrentPhotoUri();
String currentPhotoPath = mediaStoreCompat.getCurrentPhotoPath();
Log.d("lol", "onClick: currentPhotoUri   " + currentPhotoUri);
Log.d("lol", "onClick: currentPhotoPath   " + currentPhotoPath);
//uri 和 path 都能用
Glide.with(MainActivity.this).load(currentPhotoPath).into(imageView);

不要从 onActivityResult 方法里拿data ,因为data里是空的,这是因为拍照时,提前创建了jpg文件,只是把照片内容保存在已经创建好的文件里,而不是把图片文件作为data返回。(如果按照一般模式,把图片作为data返回,图片会被压缩,变得很模糊)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值