我正在编写一个从Firebase存储下载多个图像的功能
代码如下:
public static void downloadImage(String imgName, final OnBytesSuccessListener listener) {
StorageReference storageRef = FirebaseStorage.getInstance()
.getReferenceFromUrl("gs://xxxxxx.appspot.com/images").child(imgName + ".png");
final long ONE_MEGABYTE = 1024 * 1024;
storageRef.getBytes(ONE_MEGABYTE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
@Override
public void onSuccess(byte[] bytes) {
if (bytes == null) {
listener.onBytesSuccess(null);
} else {
listener.onBytesSuccess(bytes);
}
}
});
}
OnBytesSuccessListener是一个回调函数,它返回字节数据,然后在循环中调用该函数以下载所有图像。
但是在这种情况下,所有图像几乎都将同时下载。有没有办法让他们在上一次下载完成后下载一个?