我實現了我的應用程序2種方法。首先,dispatchTakePictureIntent調用startActivityForResult。所以當我的活動完成後,我回到onActivityResult。startActivityForResult用於拍照的Android
我的應用程序使用的事件,所以當我收到一個特定的事件,我開始了攝像頭,這樣我就可以拍照。問題是:我怎麼能拍攝照片後,我開始了活動,而無需觸摸顯示屏,並且只需從遠程設備receiveing另一個事件?有沒有什麼方法可以讓我拍照而不是用手指?
感謝
private void dispatchTakePictureIntent(int actionCode) {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
switch(actionCode) {
case ACTION_TAKE_PHOTO_B:
File f = null;
try {
f = setUpPhotoFile();
mCurrentPhotoPath = f.getAbsolutePath();
takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(f));
} catch (IOException e) {
e.printStackTrace();
f = null;
mCurrentPhotoPath = null;
}
break;
default:
break;
}
startActivityForResult(takePictureIntent, actionCode);
}
,所以我想我必須作出系統調用onActivityResult ..
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode) {
case ACTION_TAKE_PHOTO_B: {
if (resultCode == RESULT_OK) {
handleBigCameraPhoto();
}
break;
}
default:
break;
}
}
你可以通過實現一個自定義相機來做到這一點。上面的代碼沒有幫助它。請參閱鏈接:https://github.com/googlesamples/android-Camera2Basic –