我使用以下代码段将视频上传到Firebase存储。
file_path.putFile(selectedMediaUri).addOnProgressListener(new OnProgressListener<UploadTask.TaskSnapshot>() {
@Override
public void onProgress(UploadTask.TaskSnapshot taskSnapshot) {
Integer uploaded = (int)taskSnapshot.getBytesTransferred();
Integer total = (int)taskSnapshot.getTotalByteCount();
notificationBuilder.setProgress(total, uploaded, false);
notificationManager.notify(notificationID, notificationBuilder.build());
}
}).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(final UploadTask.TaskSnapshot taskSnapshot) {
notificationBuilder.setContentText("Your story is uploaded").setProgress(0,0,false);
notificationManager.notify(notificationID, notificationBuilder.build());
}
});
此代码在将视频上传到Firebase存储空间时效果很好。 但我有两个问题。
OnProgress
函数很晚才更新通知。我想每秒更新通知(在onProgress
函数中)。这样用户就可以看到上传的进度。有办法吗?