В настоящее время я использую намерение сделать снимок, например:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));
intent.putExtra("return-data", true);
startActivityForResult(intent, CAMERA_REQUEST);
Но мне действительно нужно установить размер изображения как можно ближе к квадрату. Поэтому после исследования кажется, что вам нужно сделать что-то вроде этого:
Camera camera = Camera.open();
Parameters params = camera.getParameters();
List<Camera.Size> sizes = params.getSupportedPictureSizes();
// Once you will see the supported Sizes, you can define them with the method :
setPictureSize(int width, int height);
Мои вопросы: выполняйте эти совлокальные работы, или это либо/или? Какой метод лучше всего подходит для моих нужд?
Опять же, у меня есть 96px на 96px поле для фотографий профиля пользователя. После того, как пользователь сделает снимок, я хочу, чтобы изображение заполнило всю коробку без растяжки. Лучше всего установить размер в момент съемки или изменить imageView
или bitmap
(или...?) После факта? ИЛИ, должен ли я позволить пользователям обрезать изображение, и я могу определить размеры области обрезки?
Изменить: см. подсказку для обновленного вопроса.