我试图选择我的画廊的图片,但可以单击我的画廊,但单击该图像后应用程序崩溃了。
我尝试调试它,并在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" />


如果您已仔细阅读错误。它已经建议它向清单文件添加权限。

09-27 09:53