我從我的應用程序通過intent與參數MediaStore.EXTRA_OUTPUT.Camera開啓相機活動開,但是當我backpress不點擊圖像我的應用程序crashes.I通過類似的問題去了,看見相機意圖如果使用MediaStore.EXTRA_OUTPUT,則返回null。那麼如何檢查圖像是否被點擊? 這裏是代碼:
安卓相機意圖處理backpress
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Uri camCapfileUri = Uri.fromFile(new File(camCaptureImageName));
intent.putExtra(MediaStore.EXTRA_OUTPUT, camCapfileUri);
activity.startActivityForResult(intent, reqCode);
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
//Changes camera on backpressed with data null checked
if (requestCode == REQUEST_CAMERA) {
onCaptureImageResult();
} else if (requestCode == PICK_FROM_GALLERY && data.getData() != null) {
onSelectFromGalleryResult(data);
}
}
,當我檢查(數據!= NULL)的攝像頭,可以在一些手機和崩潰其他mobiles.So我如何在這種情況下處理backpress運作良好。
檢查Activity.RESULT_CANCELED或Activity.RESULT_OK ...在後退按鈕的情況下,您將獲得Activity.RESULT_CANCELED –
爲什麼在開始使用數據或文件之前沒有檢查onActivityResult中的RESULT_Ok?如果你沒有捕獲或什麼也沒做相機的意圖總是返回以外,它保證將返回RESULT_OK之前開始提取數據之外的Result_cancel。 –