У меня есть код, использующий MediaStore.ACTION_IMAGE_CAPTURE, предназначенный для захвата миниатюр.До недавнего времени он работал: - (
Вот мой код:
protected void takePicture() {
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
if (intent.resolveActivity(getMainActivity().getPackageManager()) != null) {
startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE);
} else {
Log.e(tag, ">>No Activity available to handle camera photo");
}
}
// ...
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) {
if (resultCode == Activity.RESULT_OK) {
enableUserInteraction(false);
Bitmap bmp = (Bitmap) data.getExtras().get("data");
}
} else {
// user canceled
}
}
(права доступа пропущены)
мой код в значительной степени скопирован со следующей ссылки Android https://developer.android.com/training/camera/photobasics
На моем более новом устройстве под управлением Android 9 код результата действия всегда отменяется, в то время как одно и то же приложение / код по-прежнему работает на более старой версии Android.
Любые советы, исправления или обходные пути приветствуются.