【发布时间】:2020-05-07 22:27:16
【问题描述】:
FirebaseStorage storage;
StorageReference downloadRef;
StorageReference listRef;
Object Downloads;
ArrayList<String> arrayList;
ArrayAdapter arrayAdapter;
ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView = findViewById(R.id.listView);
arrayList = new ArrayList<>();
listRef = storage.getInstance().getReference("Project");
listRef.listAll().addOnSuccessListener(new OnSuccessListener<ListResult>() {
@Override
public void onSuccess(ListResult listResult) {
for (StorageReference items : listResult.getItems()) {
arrayList.add(items.getName());
}
}
});
arrayAdapter = new ArrayAdapter(MainActivity.this, android.R.layout.simple_list_item_1, arrayList);
listView.setAdapter(arrayAdapter);
}
所以我是 android 新手,这就是我试图获取文档名称的方法,以便可以使用 listView 显示它们。我哪里错了?
【问题讨论】:
-
你没有做错。 Firebase 存储中有文件夹吗?也许你的参考是错误的。
-
@KasımÖzdemir 所以我添加了一个文件夹并尝试了这种方式,我还注意到它永远不会进入 for 循环。我已经更新了代码部分。
-
如果您在
onSuccess中放置Log.i("STORAGE", listResult.getItems().size())语句,它会在logcat 输出中打印什么? -
您的代码是正确的。我认为,存在规则问题。你认证了吗?
-
@FrankvanPuffelen I/STORAGE: 2
标签: android firebase firebase-storage