繁体   English   中英

从照片路径创建位图时,权限被拒绝

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM