首页 文章

Swift:当用户关闭应用程序时,将图像上传到Firebase Cloud 存储

提问于
浏览
3

当用户终止应用时,如何将图像上传到Firebase存储?

这是我的代码:

firebaseRef.child("\(uid)/\(filePath)").put(data, metadata: metadata) { (metadata, error) in
   // NOTE: This spot never reaches when user closes the app
   if error != nil || metadata == nil {
      log.error("Fail to store image in cloud storage")
   } else {
      // Do something with the metadata url
   }

如您所见,如果用户终止应用程序并且我无法将用户的图像上传到Firebase存储,则异步完成功能块永远不会完成

如何在上传图片后防止用户终止应用?我有一个初步的想法 . 我可以暂时将图像存储在 CoreData / NSUserDefaults 中,并在用户再次打开应用程序时重试上传吗?

1 回答

  • 1

    好问题 . 目前,在iOS上,如果应用程序背景或被杀,则无法继续并重新启动上载或下载 . 此功能exists on Android(因为活动在屏幕旋转时重置,这使其成为一个更常见的问题),我们计划将来在iOS上使用它 .

    最终,我们想简单地将它设为 [FIRStorage enablePersistentUploads:YES] 或类似标志,以便自动为您执行此操作,因此您根本不必考虑它 .

相关问题