700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 坑:Android从相册中选择图片加载到ImageView中显示不出

坑:Android从相册中选择图片加载到ImageView中显示不出

时间:2023-10-03 17:22:42

相关推荐

坑:Android从相册中选择图片加载到ImageView中显示不出

📋本文目录

坑:最终解决:

坑:

在申请了android.permission.WRITE_EXTERNAL_STORAGE权限后,从相册里选择的图片还是一直不能加载到ImageView中,通过对整个代码部分可能有问题的地方都加了log、Toast进行检查,是没问题的,能一路顺畅地运行到最后一步。

(通过调用相机拍照的照片也能正常地显示出来,我就更迷惑了😶)

然后还好我瞅了瞅Logcat,发现在我选择照片之后竟然有一个open failed: EACCES (Permission denied)

!!!我不是已经给了权限了吗😶

在程序中的是否授权的判断语句中也是通过了的:

于是我在网上疯狂查,查到各种奇奇怪怪的,几乎都没能解决问题。其中还有大部分的文章是围绕 “onActivityResult()方法中的判断条件把resultCode写成requestCode的问题” 来解决的,我不知说什么好😅

终于,看到了下面的这篇:

里面解释的是:

安卓Q(10)开始,就采用存储的分区控制,只能通过手动打开权限,才能使用存储权限。

解决方法:

AndroidManifest.xmlapplication标签下新增android:requestLegacyExternalStorage="true"即可解决

参考链接:/p/e1f043a263a6

最终解决:

AndroidManifest.xml文件中不仅需要加上<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />,还需要在application标签下新增android:requestLegacyExternalStorage="true",如下图:

然后图片就能成功地从相册中加载到ImageView中啦!当然了,如果图片过大的话需要进行压缩再加载到内存中,不然可能会导致程序崩溃。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。