2017-05-15 17 views
-1

現在ログインしている会社の名前が必要です。親火災基地を取得するandroid

これはFirebaseで私のデータベースです: enter image description here

は、どのように私は会社の名前を得ることができますか?その名前を取得するには

+0

のようなものでなければなりませんしてみてくださいこのノードが属する会社。より良い実践のためには、このノードの内部にフィールドとして会社名を追加してください。 – mohnage7

+0

私は既に持っています、それは "nomeEmp"と呼ばれています –

答えて

1

次のコードを使用してください:

DatabaseReference yourRef = FirebaseDatabase.getInstance().getReference().child("empresas").child("leixoes"); 

yourRef.addValueEventListener(new ValueEventListener() { 
    @Override 
    public void onDataChange(DataSnapshot dataSnapshot) { 
    String name = (String) dataSnapshot.getKey(); 
    } 

    @Override 
    public void onCancelled(DatabaseError databaseError) { 
    throw databaseError.toException(); // don't ignore errors 
    } 
}); 

はそれがお役に立てば幸いです。

+0

私はログインしている私のユーザーが所属する会社の名前を取得したいと思います。 –

+0

あなたのデータベース構造を少し改造する必要があります。会社名を 'user'オブジェクトのフィールドにします。ユーザーノードでは、UIDや電子メールアドレスなどの一意の識別子でそのIDを変更します。 –

1

これを試してください。

mFirebaseRef = new Firebase("https://yours.firebaseio.com"); 
     mFirebaseRef.addListenerForSingleValueEvent(new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 
       for (DataSnapshot child: dataSnapshot.getChildren()) { 
        Log.i("MainActivity", child.getKey()); 
       } 
      } 

      @Override 
      public void onCancelled(FirebaseError firebaseError) { 
       Log.e("MainActivity", "onCancelled", firebaseError.toException()); 
      } 
     }); 
0

この

DatabaseReference ref= FirebaseDatabase.getInstance().getReference().child("empresas").child("leixoes").child("0"); 

    ref.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      // to get all membros object ,then you can get company name from it by 
      Membros member= dataSnapshot.getValue(Membros.class); 
      String companyName= member.getNomeEMP(); 

      ////// or you can get "pic" value only ///////// 
      String companyName= dataSnapshot.child("nomeEMP").getValue(String.class); 
     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 

あなたのPOJOは、あなたがすでに "0" のノードを持っていて、名を欲しいと仮定している

public class Membros { 
String emailM, nomeM,tipoM,nomeEMP; 
int pontM; 

public String getEmailM() { 
    return emailM; 
} 

public void setEmailM(String emailM) { 
    this.emailM = emailM; 
} 

public String getNomeM() { 
    return nomeM; 
} 

public void setNomeM(String nomeM) { 
    this.nomeM = nomeM; 
} 

public String getTipoM() { 
    return tipoM; 
} 

public void setTipoM(String tipoM) { 
    this.tipoM = tipoM; 
} 

public String getNomeEMP() { 
    return nomeEMP; 
} 

public void setNomeEMP(String nomeEMP) { 
    this.nomeEMP = nomeEMP; 
} 

public int getPontM() { 
    return pontM; 
} 

public void setPontM(int pontM) { 
    this.pontM = pontM; 
} 

}

関連する問題