gpt4 book ai didi

android - BitmapFactory:无法解码流:java.io.FileNotFoundException

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:51:53 24 4
gpt4 key购买 nike

我有一个关于 BitMapFactory.decodeFile 的问题。

在我的应用中,我希望用户能够从他/她的设备中选择图像或拍照。然后必须将其显示在 ImageView 中

这是代码 fragment :

Uri selectedImage = data.getData();
String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String picturePath = cursor.getString(columnIndex);
cursor.close();
MyImage image = new MyImage();
image.setTitle("Test");
image.setDescription("test choose a photo from gallery and add it to " + "list view");
image.setDatetime(System.currentTimeMillis());
image.setPath(picturePath);

我得到了这个异常(exception):

BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: /storage/emulated/0/WhatsApp/Media/WhatsApp Images/IMG-20170302-WA0012.jpg: open failed: EACCES (Permission denied)

如何解决。请帮助我。在此先感谢..

最佳答案

它的权限问题,你需要在manifest中添加外部读取存储的权限,然后才能使用它,如果你使用6.0以上的操作系统,那么你需要使用Easy权限。

写:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

阅读:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

6.0 以上:

private String[] galleryPermissions = {Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE};

if (EasyPermissions.hasPermissions(this, galleryPermissions)) {
pickImageFromGallery();
} else {
EasyPermissions.requestPermissions(this, "Access for storage",
101, galleryPermissions);
}

关于android - BitmapFactory:无法解码流:java.io.FileNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42571558/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com