[英]Permission denied when creating bitmap from photo path
我正在尝试从像这样的照片路径创建位图:
Bitmap bitmap = BitmapFactory.decodeFile(mCurrentPhotoPath);
我在清单中添加了权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
以前工作正常。 但是突然出现了问题,他说:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/image_1.jpg: open failed: EACCES (Permission denied)
我已经搜寻了几天的答案,但仍然无法弄清楚。 我对android完全陌生,这是我的第一篇文章。 希望你能帮助我。 谢谢!
供您参考,我正在使用android studio和genymotion。 应用程序API为23。
该应用尚未获得写入外部存储器的许可,这是android 23 Marshmallow的一项新功能,称为Run time许可 。
首先,您需要创建运行时权限,以供用户接受并批准写入外部存储器,然后才能对其进行写入。
你可以试试看
Bitmap bitmap = BitmapFactory.decodeFile(mCurrentPhotoPath);
至
Bitmap bitmap = BitmapFactory.decodeFile("file://"+mCurrentPhotoPath);
我希望这能帮到您。 谢谢
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.