2017-12-17 1 views
0

나는 목록이나 ArrayLists를 사용하여 Firebase 실시간 데이터베이스에 데이터를 추가하는 방법을 알아 내려고 노력했다. 예를 들어 게시물을 좋아하고 목록/arraylist에 추가 한 다음 해당 목록/ArrayLists를 실시간 데이터베이스에 업로드 한 사용자 목록을 만들고 싶습니다. 그 후에도 firebase에서 데이터를 가져 오려고합니다.List/ArrayLists를 사용하여 Firebase에 데이터를 추가 및 검색하는 방법은 무엇입니까?

답변

0

에서 읽기 및 쓰기 작업에 대한 몇 가지 문서는이 다음 코드를 사용하십시오 달성하기

List<String> friends = new ArrayList<>(); 
friends.add("John"); 
friends.add("Steve"); 
friends.add("Anna"); 

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); 
for(String friend : friends) { 
    rootRef.child("friends").child(friend).setValue(true); 
} 

데이터베이스가 다음과 같이 표시됩니다

Firebase-root 
    | 
    --- friends 
      | 
      --- John: true 
      | 
      --- Steve: true 
      | 
      --- Anna: true 

는 모든 이름을 얻으려면 List으로 변경하려면 다음 코드를 사용하십시오.

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); 
DatabaseReference friendsRef = rootRef.child("friends"); 
ValueEventListener eventListener = new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
     List<String> friends = new ArrayList<>(); 
     for(DataSnapshot ds : dataSnapshot.getChildren()) { 
      String friend = ds.getKey(); 
      friends.add(friend); 
     } 
     Log.d("TAG", friends); 
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) {} 
}; 
friendsRef.addListenerForSingleValueEvent(eventListener); 

출력은

[John, Steve, Anna] 
+0

입니다. 감사합니다. 그것은 잘 작동 – user9109541

+0

당신을 환영합니다! 다행 이군. 건배! –

0

나는 단지 설명을합니다. 게시물을 좋아하는 사용자 목록을 수동으로 추가 하시겠습니까? 이것은 일반적으로 사용자가 개별적으로 게시물을 좋아하고 포스트를 업데이트하는 것과 같은 속도로 사용자가 좋아하는 게시물을 표시하는 사용자에게 표시하는 이상적인 것입니다. 중포 기지 link

관련 문제