#kotlin #google-cloud-firestore
# #kotlin #google-облако-firestore
Вопрос:
Я создаю небольшое приложение типа социальной сети, в котором пользователь вводит текст и изображения, а затем они отображаются на главном экране. Я уже закончил часть текста, но теперь мне не хватает изображения. Я уже создал функцию открытия галереи, чтобы пользователь мог выбрать изображение и указать, какое из них он выбрал.
Это функция, которую я использую, чтобы открыть галерею устройств и выбрать одно:
здесь открывается галерея
object imageController {
fun selectPhotoFromGallery(activity: Activity, code: Int ) {
val intent = Intent(Intent.ACTION_PICK)
intent.type = "image/*"
activity.startActivityForResult(intent, code)
}
fun saveImage(context: Context, id : Long, uri: Uri) {
val file = File(context.filesDir, id.toString())
val bytes = context.contentResolver.openInputStream(uri)?.readBytes()!!
file.writeBytes(bytes)
}
}
вот изображение, выбранное пользователем:
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
when {
requestCode == SELECT_ACTIVITY amp;amp; resultCode == Activity.RESULT_OK -> {
imageUri = data!!.data
imageView32.setImageURI(imageUri)
}
}
}
Теперь я просто хочу, чтобы изображение было сохранено в документе в firestore и, наконец, показать изображение в сообщении.
Для текста в документе firestore это выглядит так:
holder.layout.name_service.text = post.service
Как было бы получить изображение?
Ответ №1:
Вы не хотите этого делать. Вы должны проверить сохранение и загрузку изображений в облачном хранилище. Вы можете использовать это. Он предназначен именно для этого, для хранения медиафайлов. Это гораздо более реально.
Вы можете перейти к разделу как загружать файлы здесь, чтобы начать. Вы получите больше информации.