为什么Firebase上传任务快照仅返回0和100%的进度?

时间:2019-08-30 18:33:02

标签: android firebase firebase-storage

Firebase上传管理器在上传文件时仅返回0到100%。 许多stackoverflow用户表示,

  • 仅当文件大小小于256 kb(非常小)时才会发生
  • 仅当文件大小大约为2至3 MB时,它才能更好地工作。

但是我希望顺利完成上载任务的0、1、2、3,... 100%,是否可以,如果可以,请说明。

filepath.putFile(sendingImageURI).addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
                                @Override
                                public void onProgress(UploadTask.TaskSnapshot taskSnapshot)
                                {
                                    double progress = ((100.0 * taskSnapshot.getBytesTransferred()) / taskSnapshot.getTotalByteCount())/100;
                                    Progressbar.setProgress((int) progress);
                                    progressText.setText(String.valueOf(progress));
                                    Log.i("progress",String.valueOf(progress));//this print 0 and 100 only
                                }
                            });

enter image description here

1 个答案:

答案 0 :(得分:4)

听起来您已经有了答案:“只有在文件大小<256 kb(非常小)时,它才会发生”。 SDK仅会为较大的上载字节增量调用回调。除非您使用code from GitHub构建所需版本的SDK,否则无法以编程方式对其进行控制。如果您想要其他行为,可以随时file a feature request