Android 在onActivityResult方法中获取捕获的图像

Android 在onActivityResult方法中获取捕获的图像,android,android-intent,android-activity,camera,android-camera,Android,Android Intent,Android Activity,Camera,Android Camera,我对下面的代码有点怀疑 @Override public void onClick(View arg0) { // TODO Auto-generated method stub Intent i=new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(i, 0); }

我对下面的代码有点怀疑

@Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            Intent i=new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);

            startActivityForResult(i, 0);
        }

    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    // TODO Auto-generated method stub
    super.onActivityResult(requestCode, resultCode, data);

    if(requestCode==0 && resultCode==RESULT_OK ){

        Bundle extras = data.getExtras();
        //get the cropped bitmap
        Bitmap thePic = extras.getParcelable("data");


        ImageView image =(ImageView) findViewById(R.id.imageView1);
        image.setImageBitmap(thePic);

    }
}
在额外的getParcelable(“数据”);这里的代码行“数据”作为密钥传递给可包裹对象


我的问题是,类中是否已经定义了名为“data”的键?或者任何关于这是如何被接受的原因

camera应用程序负责向您在
onActivityResult(…)
中收到的
意图添加缩略图。它基本上是将
位图
值添加到意图中,并将
的“数据”
作为键。因此,可以尝试通过键从返回的意图中获取该值。这一点也在Android开发者网站上的:

Bundle extras = intent.getExtras();
mImageBitmap = (Bitmap) extras.get("data");
然而,根据经验,我可以说并不是所有的相机应用程序都尊重这种行为。我不会依赖数据键实际存在,也不会依赖返回的intent nog为
null