获取图像的名称在火力存储
问题描述:
现在我从它的名字火力下载图像..获取图像的名称在火力存储
storageRef.child("NAME OF your IMAGE").getBytes(Long.MAX_VALUE).addOnSuccessListener(new OnSuccessListener<byte[]>() {
@Override
public void onSuccess(byte[] bytes) {
// Use the bytes to display the image
Bitmap bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
imageView.setImageBitmap(bitmap);
}
是否有可能获取存储在存储火力图像的所有名称到一个列表。
答
不,你不能。你可以做inseatd什么是建立在你的火力地堡的数据库名为imageNames
每次图像添加到火力地堡商店一个新的部分,并添加到像这样的新节点下coresponding形象的名字:
Firebase-root
|
--- imageNames
|
--- imageId1: ImaneName1
|
--- imageId2: ImaneName2
要获得所有这些名字,只是附加一个监听器此imageNames
节点上,并从dataSnapshot
对象像这样得到所有这些名字:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference imageNamesRef = rootRef.child("imageNames");
ValueEventListener eventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String imageName = ds.getValue(String.class);
Log.d("TAG", imageName);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {}
};
imageNamesRef.addListenerForSingleValueEvent(eventListener);
可以请你给我一个例子,如何从datasnapshot @Alex马莫 –
是得到了名字。请看我更新的答案。 –
感谢bro @Alex Mamo –