Я пытаюсь понять, как сохранить изображение из 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
Сохраните изображение из CameraX в общее хранилище. ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1735577840
Anonymous
Я пытаюсь понять, как сохранить изображение из CameraX в общее хранилище, т. е. чтобы оно было доступно в приложении «Галерея» по умолчанию. Я работал по этому руководству ([youtube]12_iKwGIP64[/youtube] но оно не сохраняет изображение, а просто временно сохраняет его в памяти. Насколько я понимаю, мне нужно третье значение в 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)
}
}
)
}
Подробнее здесь: [url]https://stackoverflow.com/questions/79318136/save-image-from-camerax-to-shared-storage[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия