【问题标题】:Firebase Storage Downloads Doesn't Resume on Network ReconnectionFirebase 存储下载不会在网络重新连接时恢复
【发布时间】:2016-12-23 22:08:16
【问题描述】:

故事

我正在使用 Firebase 存储来上传和下载文件。 上传工作几乎完美,如果设备失去互联网连接几分钟,上传就会停止,但一旦连接恢复,它会自动恢复。

问题

我预计 下载 也会出现完全相同的行为。但它不是那样工作的。如果我的设备失去互联网连接,下载会突然失败,并且在几秒钟后连接恢复后不会自动下载。

这是正常行为还是我遗漏了什么?

编辑

这是错误,

com.google.firebase.storage.StorageException:发生未知错误,请检查服务器响应的 HTTP 结果代码和内部异常。

Read error: ssl=0xb7e7a510: I/O error during system call, Connection timed out
                                                                           javax.net.ssl.SSLException: Read error: ssl=0xb7e7a510: I/O error during system call, Connection timed out
                                                                               at com.android.org.conscrypt.NativeCrypto.SSL_read(Native Method)
                                                                               at com.android.org.conscrypt.OpenSSLSocketImpl$SSLInputStream.read(OpenSSLSocketImpl.java:699)
                                                                               at com.android.okio.Okio$2.read(Okio.java:113)
                                                                               at com.android.okio.RealBufferedSource.read(RealBufferedSource.java:48)
                                                                               at com.android.okhttp.internal.http.HttpConnection$FixedLengthSource.read(HttpConnection.java:446)
                                                                               at com.android.okio.RealBufferedSource$1.read(RealBufferedSource.java:168)
                                                                               at java.io.InputStream.read(InputStream.java:162)
                                                                               at com.google.firebase.storage.FileDownloadTask.run(Unknown Source)
                                                                               at com.google.firebase.storage.StorageTask$5.run(Unknown Source)
                                                                               at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
                                                                               at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
                                                                               at java.lang.Thread.run(Thread.java:818)

【问题讨论】:

  • 感谢您的参考。但是如果连接丢失,我的下载会立即失败。它根本不重试。应该是什么问题?
  • @DaminiMehra 我已经编辑了这个问题,当互联网连接丢失时会立即抛出确切的异常。你能帮忙吗?
  • 请将此问题发送给 firebase 团队。他们的人对此有所帮助。或查看此链接:firebase.google.com/docs/auth/android/…

标签: android firebase firebase-authentication firebase-storage


【解决方案1】:

您可以使用带有下载 URL (reference.getDownloadUrl()) 的 Android 下载管理器来管理强大的下载。

见: Android download manager completed

我们将在即将发布的版本中改进这种处理方式。 另外我推荐使用很多图片下载 SDK(比如 Glide https://github.com/bumptech/glide

【讨论】:

    猜你喜欢
    • 2011-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 2016-11-02
    • 1970-01-01
    • 2017-07-18
    • 1970-01-01
    相关资源
    最近更新 更多