2016-09-18 2 views
0

У меня есть база данных структурирована, как это в firebase: -
retieving данные firebase динамически андроида

app root: 
     user: 
      uid1: 
        some data 
      uid2: 
        some data 
     helper: 
      helper1: 
        some data 

и так далее. Я хочу получить данные из этой базы данных. Только некоторые конкретные данные и отображать их в приложении. Также я хочу загрузить все изображения (хранящиеся в хранилище firebase) из ссылки, предоставленной в помощнике, и отобразить их в приложении.

Я пробовал документацию для извлечения данных, но не смог получить конкретный список данных.

EDIT: -

private DatabaseReference myDb; 
myDb = FirebaseDatabase.getInstance().getReference(); 

final String userId = getUid(); 
mDatabase.child("user").child(userId).addListenerForSingleValueEvent(
     new ValueEventListener() { 

      public void onDataChange(DataSnapshot dataSnapshot) { 

       User uData = dataSnapshot.getValue(User.class); 
      } 

     }); 

Это то, что я узнал из документации и делал, это было хорошо для одноверсионных данных, но я хочу, чтобы получить все данные по категории пользователя или помощнику.

  1. Как пронумеровать все данные?
  2. Как отобразить загруженное изображение из ссылки в приложение для Android?

Надеюсь, теперь это поможет.

+0

Что вы пробовали? Что не работает? Где вы хотите отобразить их? Можете ли вы объяснить, что вы хотите сделать? Вы хотите восстановить ВСЕ эти строки ('некоторые данные')? Измените свой вопрос и исправьте его, пытаясь ответить на мои вопросы косвенным или прямым способом. –

+0

да, я хочу получить все эти строки под helper1 и так далее. Я хочу отобразить его в приложении Android в виде текста. Я пробовал официальный документ google для firebase. @AbAppletic –

+0

Редактируйте свой вопрос с помощью кода и всего, что я упомянул выше, иначе вы не получите никаких ответов. –

ответ

0

Итерации по списку узлов Firebase с использованием dataSnapshot.getChildren() (должен возвращать итерируемый irrc).

Пример:

mDatabase.child("users").addListenerForSingleValueEvent(
    new ValueEventListener() { 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for (DataSnapshot childSnapshot : datasSnapshot.getChildren() { 
       User uData = childSnapshot.getvalue(User.class); 
      } 
     } 

     // onCancelled()... 
    } 
); 

Вы отображать изображения в Android с помощью ImageViews. Я бы порекомендовал вам проверить библиотеку изображений Android Picasso для некоторых полезных функций.

+0

Могу ли я привести пример getChildren() с приведенным выше примером. Пожалуйста. –

+0

Отредактировано с примером. –