我试图选择我的画廊的图片,但可以单击我的画廊,但单击该图像后应用程序崩溃了。
我尝试调试它,并在onActivityResult
这一行的InputStream openInputStream = getContentResolver().openInputStream(photoLocation);
方法中将其崩溃
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == IMAGE_GALLERY) {
Uri photoLocation = data.getData();
try {
InputStream openInputStream = getContentResolver().openInputStream(photoLocation);
selectedImage = BitmapFactory.decodeStream(openInputStream);
imagePlantsearch.setImageBitmap(selectedImage);
} catch (FileNotFoundException e) {
e.printStackTrace();
Toast.makeText(this, "Unable to open image",Toast.LENGTH_LONG).show();
}
}
}
}
最佳答案
您忘记了从设备读取文件的写入权限。只需将以下行添加到您的AndroidManifest.xml
文件。
向清单文件添加读取权限。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
如果您已仔细阅读错误。它已经建议它向清单文件添加权限。