Как указать параметры при вызове камеры?
Если вызвать камеру через Intent, и перед нажатием на кнопку "Сделать снимок" зайти в настройки, то там будет сокращенный список.
Как сделать, чтобы этот список был полный?
Мне надо в нем включить разрешение использовать координаты геолокации.
Делаю так:
private Uri selectedPhotoPath;
Intent captureIntent;
captureIntent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, selectedPhotoPath);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
captureIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
} else {
ClipData clip = ClipData.newUri(getContentResolver(), "A photo", selectedPhotoPath);
captureIntent.setClipData(clip);
captureIntent.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
}
int permissionStatus = ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA);
if (permissionStatus == PackageManager.PERMISSION_GRANTED) {
startActivityForResult(captureIntent, RESULT_CAMERA);
} else {
ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.CAMERA},
REQUEST_CODE_PERMISSION_CAMERA);
}
Ответы (1 шт):
Полагаю, что никак. Смысл в том, что есть настройки камеры, которые влияют на идентификацию, в частности геотаггинг - предполагается, что юзер должен включать/выключать их сам своими рученьками. Вторжение сюда через "заднюю дверь" - программно рассматривается как вторжение в личное пространство юзера.
Update
Также отсутствует возможность вызова настроек камеры, по крайней мере уважаемый @CommonsWare именно так и говорит