Сохраните изображение из CameraX в общее хранилище.Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Сохраните изображение из CameraX в общее хранилище.

Сообщение Anonymous »

Я пытаюсь понять, как сохранить изображение из CameraX в общее хранилище, т. е. чтобы оно было доступно в приложении «Галерея» по умолчанию. Я работал по этому руководству ( но оно не сохраняет изображение, а просто временно сохраняет его в памяти. Насколько я понимаю, мне нужно третье значение в takePicture(), что-то о создании файла, но я не понимаю, как это работает (где изображение должно быть сохранено, путь, новая папка или нет, разрешения и т. д.). Можете ли вы помочь уточнить, что мне нужно изменить/добавить в моем коде ниже?
private fun takePhoto(
controller: LifecycleCameraController,
onPhotoTaken: (Bitmap) -> Unit
) {
if (!hasRequiredPermissions()) {
return
}

// when a photo is taken
controller.takePicture(
ContextCompat.getMainExecutor(applicationContext),
object : OnImageCapturedCallback() {
override fun onCaptureSuccess(image: ImageProxy) {
super.onCaptureSuccess(image)

// create a matrix
val matrix = Matrix()

// if the back camera is being used
if (controller.cameraSelector == CameraSelector.DEFAULT_BACK_CAMERA) {
matrix.apply {
postScale(1f, 1f)
}
} else {
matrix.apply {
// flip the image horizontally
postScale(-1f, 1f)
}
}

// create bitmap with changes
val rotateBitmap = Bitmap.createBitmap(
image.toBitmap(),
0,
0,
image.width,
image.height,
matrix,
true
)
onPhotoTaken(rotateBitmap)
image.close()
}

override fun onError(exception: ImageCaptureException) {
super.onError(exception)
Log.e("Camera", "Couldn't take photo: ", exception)
}
}
)
}


Подробнее здесь: https://stackoverflow.com/questions/793 ... ed-storage
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»