java.lang.RuntimeException:将结果ResultInfo{who=null,request=1,result=-1,data=null}传递给活动失败
我的应用程序从棉花糖设备中的gallery中获取图像,但是当我在API级别为18的设备上运行它时,我得到了一个异常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
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);
}
}