dan*_*nji 14 firebase firebase-storage
即使您处于脱机状态,Firebase也可以选择使用他们的数据库并将数据发送到他们的数据库,然后当连接再次启动时,它会自动将数据发送到数据库.
即使互联网关闭,也可以使用Firebase存储,例如发送图像,然后当互联网再次启动时,它会自动发送图像文件吗?
如果是这样,我该怎么办?如果没有使用Firebase,还有其他选择吗?
Fra*_*len 10
是.Firebase存储客户端支持恢复上载.有关上传(iOS,Web,Android)的信息,请参阅Firebase存储文档.
从那里为Android:
uploadTask = mStorageRef.putFile(localFile);
sessionUri = uploadTask.getUploadSessionUri();
//save the sessionUri to persistent storage in case the process dies.
Run Code Online (Sandbox Code Playgroud)
然后恢复:
//resume the upload task from where it left off when the process died.
//to do this, pass the sessionUri as the last parameter
uploadTask = mStorageRef.putFile(localFile,
new StorageMetadata.Builder().build(), sessionUri);
Run Code Online (Sandbox Code Playgroud)
处理sessionUri的一种方法:
uploadTask,获取sessionUri并将其存储到应用程序中SharedPreferences.uploadTask完成,从应用程序的删除sessionUri SharedPreferences.sessionUri的SharedPreferences.如果是这样:继续上传.从技术上讲,鉴于OP问题,接受的答案是不正确的,即
即使互联网关闭也发送图像
接受的答案谈到了一旦开始就恢复下载,它详细地纠正了但没有正确解决答案。
正确的答案是“否”,如果设备未连接到互联网,则无法将图像上传到 Firebase Storage,上传将会失败并且不会自动重新启动上传操作。
如前所述,您必须连接到互联网,至少连接到互联网足够长的时间才能开始上传并从 Firebase 获取uploadsessionuri URI。上传开始后,您可以使用此示例代码或上面的代码恢复上传。
如文档中所述,简历 URI 的有效期约为 7 天,但开发人员有责任确保文件内容自上传开始以来未发生更改。
| 归档时间: |
|
| 查看次数: |
6695 次 |
| 最近记录: |