Android 从操作\u图像\u捕获意图获取图像时出错
我正在使用ACTION\u IMAGE\u CAPTURE从相机中使用Intent拍摄图像。 我正在使用以下代码:Android 从操作\u图像\u捕获意图获取图像时出错,android,android-intent,Android,Android Intent,我正在使用ACTION\u IMAGE\u CAPTURE从相机中使用Intent拍摄图像。 我正在使用以下代码: Intent i = new Intent (MediaStore.ACTION_IMAGE_CAPTURE); //startActivity(i); startActivityForResult(i,1); InputStream stream = null; if (requestCode == 1
Intent i = new Intent (MediaStore.ACTION_IMAGE_CAPTURE);
//startActivity(i);
startActivityForResult(i,1);
InputStream stream = null;
if (requestCode == 1 && resultCode == Activity.RESULT_OK)
try
{
// recyle unused bitmaps
if (bitmap != null) {
bitmap.recycle();
}
stream = getContentResolver().openInputStream(data.getData());
bitmap = BitmapFactory.decodeStream(stream);
imgPic.setImageBitmap(bitmap);
} catch (FileNotFoundException e)
{
//e.printStackTrace();
Log.e("ERROR 2 :->",e.toString());
}
if (stream != null)
{
try
{
stream.close();
} catch (IOException e)
{
//e.printStackTrace();
Log.e("ERROR 3 :->",e.toString());
}
}
}
并通过以下代码获得预期结果:
Intent i = new Intent (MediaStore.ACTION_IMAGE_CAPTURE);
//startActivity(i);
startActivityForResult(i,1);
InputStream stream = null;
if (requestCode == 1 && resultCode == Activity.RESULT_OK)
try
{
// recyle unused bitmaps
if (bitmap != null) {
bitmap.recycle();
}
stream = getContentResolver().openInputStream(data.getData());
bitmap = BitmapFactory.decodeStream(stream);
imgPic.setImageBitmap(bitmap);
} catch (FileNotFoundException e)
{
//e.printStackTrace();
Log.e("ERROR 2 :->",e.toString());
}
if (stream != null)
{
try
{
stream.close();
} catch (IOException e)
{
//e.printStackTrace();
Log.e("ERROR 3 :->",e.toString());
}
}
}
但当我单击图片预览意图中的勾选按钮时,它会给出以下错误:
1-10 00:55:34.675 25036-25036/com.digicare.digitrick W/dalvikvm﹕ threadid=1: thread exiting with uncaught exception (group=0x40e3d258)
01-10 00:55:34.686 25036-25036/com.digicare.digitrick E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { act=inline-data (has extras) }} to activity
我在哪里错过了一些东西????
如何在ImageView中获取捕获的图像?可能是因为您的活动在相机活动操作过程中被破坏,之后又被重新创建,因为相机应用程序占用大量资源。 您可以尝试旋转活动以强制销毁活动并重新创建以检查问题 有关更多信息,请参见此~
你能发布你的全部onActivityResult吗?Andro Selva这是全部代码。只是错过了起跑线@重写受保护的void onActivityResult(int requestCode、int resultCode、Intent data){然后可能尝试在第一行调用super.onActivityResult()。这可能会有所帮助。。