【发布时间】:2018-01-16 11:06:35
【问题描述】:
uploadTask.cancel() 是否仅适用于大文件?我正在尝试上传一个它可以工作的文件,但文件上传应该是可取消的,在我的情况下,即使我取消了文件上传,它也只适用于大文件小文件上传。
【问题讨论】:
标签: android firebase firebase-storage
uploadTask.cancel() 是否仅适用于大文件?我正在尝试上传一个它可以工作的文件,但文件上传应该是可取消的,在我的情况下,即使我取消了文件上传,它也只适用于大文件小文件上传。
【问题讨论】:
标签: android firebase firebase-storage
可能发生的情况是,小文件的上传速度非常快,当您致电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 为例。但你是对的,它会删除你所有的文件。你应该改用storagetRef.child(pictureRefName).delete()。