【问题标题】:Firebase Android: File upload cancellationFirebase Android:文件上传取消
【发布时间】:2018-01-16 11:06:35
【问题描述】:

uploadTask.cancel() 是否仅适用于大文件?我正在尝试上传一个它可以工作的文件,但文件上传应该是可取消的,在我的情况下,即使我取消了文件上传,它也只适用于大文件小文件上传。

【问题讨论】:

    标签: android firebase firebase-storage


    【解决方案1】:

    可能发生的情况是,小文件的上传速度非常快,当您致电cancel() 时,它们已经上传了。您没有提供任何代码,但我假设您在单击按钮时正在执行uploadTask.cancel()。所以我建议你在取消之前检查任务是否完成。如果是,请删除小文件。您可以使用此代码:

        if (!uploadTask.isComplete()) {
            //Upload is not complete yet, let's cancel
            uploadTask.cancel();
        } else {
            //Upload is complete, but user wanted to cancel. Let's delete the file
            uploadTask.snapshot.ref.delete();
            // storageRef.delete(); // will delete all your files
        }
    

    【讨论】:

    • 不会 storageRef.delete();删除我存储中的所有文件?这是我的存储参考的样子:- StorageReference storageRef = storage.getReferenceFromUrl(Constants.fbStoragePathImage);这就是我将其上传到存储 UploadTask uploadTask= storageRef.child(pictureRefName ).putFile(fileUri); 的方式
    • 我只是以storageRef 为例。但你是对的,它会删除你所有的文件。你应该改用storagetRef.child(pictureRefName).delete()
    猜你喜欢
    • 1970-01-01
    • 2014-09-20
    • 2016-04-27
    • 2014-05-08
    • 2019-03-09
    • 1970-01-01
    • 2022-01-10
    • 2021-06-09
    • 2021-03-20
    相关资源
    最近更新 更多