尝试从firebase存储中下载文件。
工作得很好,但我的进度没有得到更新“直播”。
当我调试。记录我的进度时,所有调试消息在下载完成时打印在控制台中,而不是在下载过程中打印。
在工作中,我的互联网连接更好,它看起来好像按预期工作,但在家里我有这种奇怪的行为。
public void DownloadFile(string destination, string filename, StorageProgress<DownloadState> handleProgress, Action<Task> completionBlock)
{
CTRouter.MyContentReference(uid, cid)
.Child(filename)
.GetFileAsync(destination, handleProgress, CancellationToken.None)
.ContinueWith(resultTask =>
{
completionBlock(resultTask);
});
}
在我的handleProgress方法中,我调试。记录进度并更新UI中的进度条。
是否存在线程问题?为什么进度条可以通过良好的互联网进行更新,但是当只有2 MBit互联网时却没有?它的下载并没有任何反应。下载完成后,我会收到所有进度日志的垃圾邮件,我的进度条会达到100%。
任何帮助都会很棒。 谢谢!
编辑: 我尝试了quickstart-unity repository中的代码并遇到了同样的问题(DownloadFileAsync和DownloadStreamAsync),但下载似乎冻结了UI和控制台,直到下载完成。完成后,我收到所有进度更新消息的垃圾邮件。 所以我认为unity firebase SDK中存在一个错误? 我正在使用Unity 2017.3.1f1和最新的Firebase SDK。 也尝试使用Unity 5.3.5并且它无法正常工作。
任何帮助?
答案 0 :(得分:0)
我提交了一份错误报告,并向支持人员寻求帮助。 这种行为确实是一个错误,将在下一个Firebase Unity SDK版本中修复。