Когда мое устройство Android не подключено к сети, мои FailureListener
запускаются только через 10 минут, как указано Firebase, когда я пытаюсь загрузить изображение в свое хранилище Firebase.
Я бы хотел изменить это значение до 10 с помощью свойства maxUploadRetryTimeMillis
. Но это не работает так, как задумано.
Мой упрощенный код:
object StorageUtil {
private val storageInstance: FirebaseStorage by lazy { FirebaseStorage.getInstance() }
private val currentUserRef: StorageReference
get() = storageInstance.reference
.child(FirebaseAuth.getInstance().uid ?: throw NullPointerException("UID is null."))
fun uploadPicture(imageBytes: ByteArray,
onSuccess: (imagePath: String) -> Unit) {
storageInstance.maxUploadRetryTimeMillis = 10000
val ref = currentUserRef.child("pictures/${UUID.nameUUIDFromBytes(imageBytes)}")
val uploadTask = ref.putBytes(imageBytes)
uploadTask.addOnFailureListener {
Log.i("Upload Failed", "This message never shows up")
}
}
uploadPicture()
вызывается так:
StorageUtil.uploadPicture(picture) { url ->
moment.phtotoPaths.add(url)
renderImages()
}
Это не работает. FailureListener
срабатывает только через 10 минут.
Надеюсь, я получу некоторую помощь от вас. Заранее спасибо!