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