微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

android – 使用Firebase上传更新进度条

我试图添加一个进度条来上传firebase上的文件.但不幸的是,它并不表示上传进度. logcat&进度条仅指示文件何时达到100%
uploadTask.addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onProgress(UploadTask.TaskSnapshot taskSnapshot) {
                double progress = 100.0 * (taskSnapshot.getBytesTransferred() / taskSnapshot.getTotalByteCount());
                System.out.println("Upload is " + progress + "% done");
            int currentprogress = (int) progress;
                progressBar.setProgress(currentprogress);
            }
        }).addOnPausedListener(new OnPausedListener<UploadTask.TaskSnapshot>() {
            @Override
            public void onPaused(UploadTask.TaskSnapshot taskSnapshot) {
                System.out.println("Upload is paused");
            }
        });

解决方法

更改进度计算中的术语分组以强制转换为浮动.正如你的代码现在,你正在划分两个长.除非getBytesTransferred()== getTotalByteCount(),否则除法的结果将为0,然后它将为1.
double progress = (100.0 * taskSnapshot.getBytesTransferred()) / taskSnapshot.getTotalByteCount();

原文地址:https://www.jb51.cc/android/317544.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐