2015-04-17 34 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中的全尺寸照片的原因。

相關問題