我已经挣扎了一段时间,但没有成功。我的问题很简单,由于此任务是异步的,我该如何检索下载URI的ArrayList<Uri>
并在以后使用此ArrayList
?我尝试使用回调,但无法正常工作。
例如,此
public getAllDownloadURIs(final FirestoreCallback
firestoreCallback) {
final ArrayList<Uri> uris = new ArrayList<>();
for (StorageReference storageReference : referencesToFiles) {
storageReference.getDownloadUrl().addOnSuccessListener(new OnSuccessListener<Uri>() {
@Override
public void onSuccess(Uri uri) {
uris.add(uri);
}
});
firestoreCallback.onCallback(uris);
}
private interface FirestoreCallback {
void onCallback(List<Uri> uris);
}