Android10获取相册失败的解决方法
使用android 10手机开发的时候,比如拍照或者选择相册图片的时候会获取失败
文本转自 链接
网上查了一下说在AndroidManifest.xml 文件的application中添加这样一行代码就好了
1 | android:requestLegacyExternalStorage="true" |
但我试了一下还是不行,后来通过打印图片的路径才发现问题所在,正常的路径一般都是这样的
1 | /storage/emulated/0/paisamore/1603769512132.png |
但使用android 10手机测试的时候发现路径是这样的
1 | content://media/external/file/175256 |
也就是说他前面是content开头的,我们通过BitmapFactory.decodeFile(path)
是加载不成功的。
android10读取相册返回以content开头的路径也不是绝对的,我们也可以让他返回那种正常的路径,这样就可以使用BitmapFactory.decodeFile(path)
了。但如果我们使用的是第三方库,在android 10他返回的就是以content开头的文件路径,我们只有自己处理了,处理方式如下
1 | public static Bitmap getBitmapFromPath(Context contex, String path) { |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Halcyon Days!