安卓Bug之Unable to decode stream: java.io.FileNotFoundException: ****(Permission denied)
安卓Bug之Unable to decode stream: java.io.FileNotFoundException: ****(Permission denied)AndroidManifest.xml赋予权限了<uses-permission android:name="android.permission.CAMERA"/><uses-permission androi
·
安卓Bug之Unable to decode stream: java.io.FileNotFoundException: ****(Permission denied)
AndroidManifest.xml 赋予权限了
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
Activity 也动态赋予权限
if (ContextCompat.checkSelfPermission(Objects.requireNonNull(this), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(Objects.requireNonNull(this), new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 222);
}
控制台报错
Unable to decode stream: java.io.FileNotFoundException: ****(Permission denied)
解决办法
在 AndroidManifest.xml文件里的application标签下加
android:requestLegacyExternalStorage="true"
扩展
ps:以下信息来源就差android:requestLegacyExternalStorage=“true“那点事
针对
targetSdkVersion >= 29
此时需要检查创建文件夹的代码是否是 Environment.getExternalStorageDirectory()
如果是的话,那么就必须换掉了,哪怕,你配置了 android:requestLegacyExternalStorage="true" ,可以换成 Context.getExternalFilesDir(Environment.DIRECTORY_DOCUMENTS)
————————————————
版权声明:本文为CSDN博主「放空di自己」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wqs1028/article/details/113618069
这里可以看评论,Environment.getExternalStorageDirectory()这个方法还是可以使用的
android --------- Android10系统上访问本地相机下的视频文件报错 /storage/emulated/0/DCIM/Camera/ open failed: EACCES

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)