2015-04-17 49 views
0

我有下面的代码,我试图检索我捕获的图像,而不必将其存储到外部存储之前这样做。有没有办法检索图像,而不是先将它存储在任何位置?如何获取而不存储它 - Android

private static final int CAMERA_REQUEST = 1; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    imageView = (ImageView) findViewById(R.id.imageView1); 
    Button captureBtn = (Button) findViewById(R.id.button1); 

    captureBtn.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
      startActivityForResult(cameraIntent, CAMERA_REQUEST); 
     } 
    }); 
} 

protected void onActivityResult(int requestCode, int resultCode, Intent data) { 
    if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK) { 
     // get image 
    } 
} 

回答

1

有没有办法不存储任何地方先检索图像?

用自己的相机拍照,使用android.hardware.Cameraandroid.hardware.camera2.*

尽管在您的代码中,由于您没有EXTRA_OUTPUT,因此您应该在Intent的附加内容中获得缩略图,并将其发送到onActivityResult()。全尺寸照片将比1MB IPC的限制大得多,这就是为什么第三方相机应用程序无法向您发送RAM中的全尺寸照片的原因。

相关问题