2016-06-12 11 views
0

datasnapshot.getRefがgetIntentから渡されたキーと同じである子(「REPORTS」)からデータをフェッチしようとしていますが、表示がなく、何が問題なのかわかりませんコードの構文このfirebaseクエリ(orderbyKey)は何も表示できません

Intent i = getIntent(); 
final String key = i.getExtras().getString("firekey"); 

Query queryRef = mDatabase.child("REPORTS").equalTo(key).orderByKey(); 
queryRef.addChildEventListener(new ChildEventListener() { 
    public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
    Log.d("Post", "data"); 
    Map<String, Object> newPost = (Map<String, Object>) dataSnapshot.getValue(); 
    if (newPost != null) { 
     reportSingle = new FoodItem(newPost.get("MEAL_TITLE").toString().trim(), 
     newPost.get("DESCRIPTION").toString().trim(), 
     newPost.get("MEAL_INGREDIENTS").toString().trim(), 

答えて

0

1つのレポートを読み込もうとしているようです。その場合は、あなたが必要です:

DatabaseReference reportRef = mDatabase.child("REPORTS").child(key); 
reportRef.addValueEventListener(new ValueEventListener() { 
    public void onDataChanged(DataSnapshot dataSnapshot) { 
    Log.d("Post", "data"); 
    if (dataSnapshot.exists()) { 
     reportSingle = new FoodItem(
     dataSnapshot.child("MEAL_TITLE").getValue(String.class).trim(), 
     dataSnapshot.child("DESCRIPTION").getValue(String.class).trim(), 
     dataSnapshot.child("MEAL_INGREDIENTS").getValue(String.class).trim(), 
+0

私はこのバグを取得しています、java.lang.RuntimeException:起動できません活動ComponentInfo {graph.app.com.foodgraph/graph.app.com.foodgraph.MealDetailsActivity }:com.google.firebase.database.DatabaseException:無効なFirebaseデータベースパス:https://foodgraph.yyyy.com/REPORTS/-KIbgR4hDIVakm_wxEYA。 Firebaseのデータベースパスに '。'、 '#'、 '$'、 '['、 ']'を含めることはできません –

+0

違うエラーのようです。あなたはどこかのキーに無効な文字を渡しています。 –

+0

classxbrew.putExtra( "firekey"、 foodList.get(position).getFireKey()。toString()。trim());からrecyclerView.setOnClickListenerからキーを渡しています。データベース参照キーが渡されたものと同じ子(REPORTS)を照会しようとしています –

関連する問題