В моем приложении реализовано 2 метода. Во-первых, dispatchTakePictureIntent вызывает startActivityForResult. Поэтому, когда моя деятельность выполнена, я возвращаюсь в onActivityResult.startActivityForResult для снятия фото android
Мои приложения используют события, поэтому, когда я получаю конкретное событие, я запускаю камеру, поэтому я могу сделать снимок. Проблема заключается в следующем: как я могу сделать снимок после того, как я начал работу, не касаясь дисплея, и просто получив другое событие с удаленного устройства? Это какой-нибудь метод, который я могу назвать, чтобы взять фотографию вместо того, чтобы использовать пальцы?
благодаря
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 –