APP Bird APP Bird - 1 year ago 547
Android Question

update progress bar with Firebase uploading

I tried to add a progress bar to uploading files on firebase. but unfortunalty it does not indicate upload progress. both logcat & progress bar only indicate when file reached to 100%

uploadTask.addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
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;
}).addOnPausedListener(new OnPausedListener<UploadTask.TaskSnapshot>() {
public void onPaused(UploadTask.TaskSnapshot taskSnapshot) {
System.out.println("Upload is paused");

Answer Source

Change the grouping of terms in your calculation of progress to force conversion to float. As your code is now, you are dividing two longs. The result of the division will be 0 until getBytesTransferred() == getTotalByteCount(), then it will be 1.

 double progress = (100.0 * taskSnapshot.getBytesTransferred()) / taskSnapshot.getTotalByteCount();
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download