java.lang.RuntimeException:将结果ResultInfo{who=null,request=1,result=-1,data=null}传递给活动失败

java.lang.RuntimeException:将结果ResultInfo{who=null,request=1,result=-1,data=null}传递给活动失败,java,android,image,image-gallery,Java,Android,Image,Image Gallery,我的应用程序从棉花糖设备中的gallery中获取图像,但是当我在API级别为18的设备上运行它时,我得到了一个异常 java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity 这是我获得许可的代码 private static final int SELECT_IMAGE = 1; public void addI

我的应用程序从棉花糖设备中的gallery中获取图像,但是当我在API级别为18的设备上运行它时,我得到了一个异常

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=null} to activity
这是我获得许可的代码

private static final int SELECT_IMAGE = 1;

public void addImage(View view){


    if (Build.VERSION.SDK_INT < 23){

        ImagePicker();

    } else {

        if (ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {

            ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_EXTERNAL_STORAGE}, 1);

        } else {

            ImagePicker();

        }

    }

}
下面是获得结果的代码

 @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    profileImage = (ImageView) findViewById(R.id.profilePicture);

if (resultCode != Activity.RESULT_CANCELED ) {

        if (requestCode == SELECT_IMAGE && data != null) {

           Bundle extra = data.getExtras(); 
            Bitmap image = extra.getParcable("data");
            profileImage.setImageBitmap(image);

        }

    }

请帮忙,谢谢

嗯。除此之外,您的代码将不会编译(输入错误),也不会运行(具有无效零参数构造函数的活动)。如果您需要帮助,您将有更好的运气提供,其中包括与崩溃相关的完整Java堆栈跟踪,以及触发崩溃的实际代码(不是伪代码)。如果是这样,那么我的代码不应该在棉花糖设备上也不工作吗?嗯,您所问的代码在棉花糖设备上不工作。正如我所指出的,它有语法错误和逻辑错误,无论您的具体问题是什么。但是,让我们假设您正在尝试的代码不是此代码,而是类似的代码。在这种情况下,可能对于您尝试的一个设备,它有一个
操作_PICK
,该操作接受这些额外内容并返回一个
“data”
额外内容。有大约20亿台设备,跨越数千种设备型号。很少有人会支持这一点,因为这超出了
ACTION\u PICK
的文档行为的范围。除此之外,您的代码将不会编译(输入错误),也不会运行(具有无效零参数构造函数的活动)。如果您需要帮助,您将有更好的运气提供,其中包括与崩溃相关的完整Java堆栈跟踪,以及触发崩溃的实际代码(不是伪代码)。如果是这样,那么我的代码不应该在棉花糖设备上也不工作吗?嗯,您所问的代码在棉花糖设备上不工作。正如我所指出的,它有语法错误和逻辑错误,无论您的具体问题是什么。但是,让我们假设您正在尝试的代码不是此代码,而是类似的代码。在这种情况下,可能对于您尝试的一个设备,它有一个
操作_PICK
,该操作接受这些额外内容并返回一个
“data”
额外内容。有大约20亿台设备,跨越数千种设备型号。很少有人会支持这一点,因为这超出了
ACTION\u PICK
的文档行为的范围。
 @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    profileImage = (ImageView) findViewById(R.id.profilePicture);

if (resultCode != Activity.RESULT_CANCELED ) {

        if (requestCode == SELECT_IMAGE && data != null) {

           Bundle extra = data.getExtras(); 
            Bitmap image = extra.getParcable("data");
            profileImage.setImageBitmap(image);

        }

    }