Verilerin alınması:
Veritabanınızda, kullanılarak oluşturulan rastgele bir kimlik kullanıyorsunuz push()
, bu nedenle verileri almak istiyorsanız aşağıdakileri yapın:
Firebase'i Android Uygulamasında kullanma:
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("users");
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot datas : dataSnapshot.getChildren()) {
String name=datas.child("name").getValue().toString();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Firebase'i Javascript'te kullanma:
firebase.database().ref().child("users").on('value', function (snapshot) {
snapshot.forEach(function(childSnapshot) {
var name=childSnapshot.val().name;
});
});
Burada anlık görüntüye (verilerin konumu) sahip users
olursunuz , ardından tüm rastgele kimliklerin içinde döngü oluşturur ve adları alırsınız.
Belirli Bir Kullanıcı için Verilerin Alınması:
Şimdi, yalnızca belirli bir kullanıcı için bilgi almak istiyorsanız, bir sorgu eklemeniz gerekir:
Firebase'i Android Uygulamasında kullanma:
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("users");
Query queries=ref.orderByChild("name").equalTo("Alex");
queries.addListenerForSingleValueEvent(new ValueEventListener() {...}
Firebase'i Javascript ile kullanma
firebase.database().ref().child("users").orderByChild("name").equalTo("Alex").on('value', function (snapshot) {
snapshot.forEach(function(childSnapshot) {
var name=childSnapshot.val().name;
});
});
Kullanmak orderByChild("name").equalTo("Alex")
, where name="Alex"
Alex ile ilgili verileri geri getirecek demek gibidir .
En iyi yol:
En iyisi, Firebase Authentication'ı kullanmak, böylece her kullanıcı için benzersiz bir kimlik oluşturmak ve bunu rastgele bir kimlik yerine kullanmaktır. push()
, bu şekilde kimliğiniz olduğundan ve ona kolayca erişebileceğinizden tüm kullanıcılar arasında döngü yapmak zorunda kalmazsınız.
Öncelikle, kullanıcının oturum açması gerekir, ardından benzersiz kimliği alabilir ve bu kullanıcının diğer verilerini almak için bir dinleyici ekleyebilirsiniz:
Firebase'i Android ile kullanma:
DatabaseReference ref = FirebaseDatabase.getInstance().getReference("users");
String uid = FirebaseAuthentication.getInstance().getCurrentUser().getUid();
ref.child(uid).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String name=dataSnapshot.child("name").getValue().toString();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Firebase'i Javascript ile kullanma:
var user = firebase.auth().currentUser;
var uid=user.uid;
firebase.database().ref().child("users").child(uid).on('value', function (snapshot) {
var name=snapshot.val().name;
});