2016-12-29 6 views
0

私は、ユーザMF0qeRA4p7djfjgXxqwFOck3m6p02のfirebaseに次のデータ構造を持っています。私はitem3の値を取得して、Android AppのUserインターフェースに1つのフィールドを入力したいと考えています。私はStackoverflowのサンプルを見てきましたが、私が見つけたのは古いもので、現在のバージョンのfirebaseでは動作しません。私は完全にfirebaseには新しく、これはアンドロイドの私の最初のアプリです。私は、ユーザーの電子メールアドレスを入力して4つの項目フィールドを追加するoncreateユーザーメソッドを持っていますが、完全に失われたデータを取得し、どこから開始するのかわかりません。FireBase Android 1人のユーザに1つの値を保存する必要があります

-Users

--- MF0qeRA4p7djfjgXxqwFOck3m6p02

------ ITEM1: "1"

------ ITEM2: "2"

- ---- ITEM3: "3"

------ ITEM4: "4"

答えて

0

カスタムモデルとあなたの中に作成することができます要素を挿入することができます。このようなもの:

public class Item { 
    private List<Object> ojects; 
} 

ここで、データベースのItemのインスタンスを保存できます。この場合、より多くの制御があります。その他の場合は、新しいエンコードされたキー、次のようなものが生成されますpush()方法、使用することです:私が識別できるかによる

mDatabase.child("items").push().put(new Object()); 
2

をあなたは、この参照からデータを取得中に問題に直面している、です。コードは次のとおりです。

final DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("Users"); 

databaseReference.child("MF0qeRA4p7djfjgXxqwFOck3m6p02").addListenerForSingleValueEvent(new ValueEventListener() { 
         @Override 
         public void onDataChange(DataSnapshot dataSnapshot) { 
          Map<String, Object> map=(Map<String, Object>)dataSnapshot.getValue(); 
          String item3=(String)map.get("item3"); 
          display(item3); 
         } 

         @Override 
         public void onCancelled(DatabaseError databaseError) { 

         } 
        }); 

希望します。

関連する問題