đĨ ValueEventListener āϏāĻšāĻ āĻাāώাā§ āĻŦ্āϝাāĻ্āϝা
đĨ ValueEventListener āϏāĻšāĻ āĻাāώাā§ āĻŦ্āϝাāĻ্āϝা
ValueEventListener āĻšāϞো Firebase Realtime Database-āĻāϰ āĻāĻāĻি āϞিāϏেāύাāϰ (listener), āϝা āĻĄেāĻাāϰ āĻĒāϰিāĻŦāϰ্āϤāύ āĻļুāύāϤে (listen) āĻāĻŦং āĻĒā§āϤে (read) āϏাāĻšাāϝ্āϝ āĻāϰে। āĻāĻি Firebase-āĻāϰ āϏāĻŦāĻেā§ে āĻুāϰুāϤ্āĻŦāĻĒূāϰ্āĻŖ listener, āĻাāϰāĻŖ āĻāĻি āĻĄেāĻাāϰ āĻĒāϰিāĻŦāϰ্āϤāύ detect āĻāϰে āĻāĻŦং āϏাāĻĨে āϏাāĻĨে UI āĻāĻĒāĻĄেāĻ āĻāϰāϤে āĻĒাāϰে।
đ§ ValueEventListener āĻী āĻāϰে?
đ āϝāĻāύ Firebase Database-āĻāϰ āĻোāύো āϰেāĻĢাāϰেāύ্āϏে (DatabaseReference) ValueEventListener āĻ
্āϝাāĻĄ āĻāϰা āĻšā§, āϤāĻāύ:
1️⃣ Firebase āĻĨেāĻে āĻĄেāĻা āĻĒā§ে
2️⃣ āĻĄেāĻা āĻĒāϰিāĻŦāϰ্āϤāύ āĻšāϞে āϏ্āĻŦā§ংāĻ্āϰিā§āĻাāĻŦে āĻāĻĒāĻĄেāĻ āĻĻেā§
đ¯ ValueEventListener āĻোāĻĨাā§ āĻŦ্āϝāĻŦāĻšাāϰ āĻšā§?
✅ āϝāĻāύ Firebase-āĻāϰ āĻĄেāĻা āĻĒ্āϰāĻĨāĻŽāĻŦাāϰ āĻĒā§āϤে āĻšāĻŦে
✅ āϝāĻāύ Firebase āĻĄেāĻা āĻāĻĒāĻĄেāĻ āĻšāϞে UI-āϤেāĻ āĻāĻĒāĻĄেāĻ āĻāϰāϤে āĻšāĻŦে
✅ āϝāĻāύ āϰিā§েāϞ-āĻাāĻāĻŽ āĻĄেāĻা āϏিāĻ্āĻ āϰাāĻāϤে āĻšāĻŦে (āϝেāĻŽāύ: āĻ্āϝাāĻ āĻ
্āϝাāĻĒ, āϞাāĻāĻ āĻāĻĒāĻĄেāĻ āϏিāϏ্āĻেāĻŽ)
đ️ ValueEventListener-āĻāϰ āĻĻুāĻāĻি āĻŽেāĻĨāĻĄ
đš 1️⃣ onDataChange(DataSnapshot snapshot) → āĻĄেāĻা āĻĒāϰিāĻŦāϰ্āϤāύ āĻšāϞে āĻāĻ āĻŽেāĻĨāĻĄ āĻ্āϰিāĻাāϰ āĻšā§।
đš 2️⃣ onCancelled(DatabaseError error) → āϝāĻĻি āĻোāύো āϏāĻŽāϏ্āϝা āĻšā§, āϤাāĻšāϞে āĻāĻ āĻŽেāĻĨāĻĄ āĻāϞ āĻšā§।
đ ValueEventListener āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰাāϰ āύিā§āĻŽ
✅ ā§§. āĻĄেāĻা āĻĒā§া (Read Data from Firebase)
DatabaseReference databaseRef = FirebaseDatabase.getInstance().getReference("users");
databaseRef.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
// đš Firebase-āĻāϰ "users" āύোāĻĄেāϰ āϏāĻŦ āĻĄেāĻা āĻĒেā§ে āϝাāĻŦো
for (DataSnapshot data : snapshot.getChildren()) {
String userName = data.child("name").getValue(String.class); // āύাāĻŽ āĻĒā§া
Log.d("Firebase", "User: " + userName);
}
}
@Override
public void onCancelled(DatabaseError error) {
Log.e("Firebase", "Failed to read data: " + error.getMessage());
}
});
✅ āĻāĻাāύে, onDataChange() Firebase-āĻāϰ users āύোāĻĄেāϰ āϏāĻŦ āĻĄেāĻা āĻĒā§ে āĻĢেāϞāĻŦে āĻāĻŦং āϝেāĻোāύো āĻĒāϰিāĻŦāϰ্āϤāύ āĻšāϞে āĻāĻĒāĻĄেāĻ āĻĻেāĻŦে।
✅ onCancelled() āϤāĻāύāĻ āĻ্āϰিāĻাāϰ āĻšāĻŦে, āϝāĻāύ āĻোāύো āĻĄেāĻা āĻĒā§āϤে āϏāĻŽāϏ্āϝা āĻšāĻŦে (āϝেāĻŽāύ: āĻĒাāϰāĻŽিāĻļāύ āύা āĻĨাāĻāϞে)।
✅ ⧍. āύিāϰ্āĻĻিāώ্āĻ āĻāĻāĻি āĻĄেāĻা āĻĒā§া (Read Single Value)
DatabaseReference userRef = FirebaseDatabase.getInstance().getReference("users/user1");
userRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot snapshot) {
String name = snapshot.child("name").getValue(String.class);
Log.d("Firebase", "User Name: " + name);
}
@Override
public void onCancelled(DatabaseError error) {
Log.e("Firebase", "Failed to read data: " + error.getMessage());
}
});
✅ āĻāĻাāύে addListenerForSingleValueEvent() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϞে āĻĄেāĻা āĻāĻāĻŦাāϰ āĻĒā§āĻŦে, āĻিāύ্āϤু āĻĒāϰিāĻŦāϰ্āϤāύ āĻļুāύāĻŦে āύা।
✅ āĻāĻি āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰুāύ, āϝāĻĻি āĻļুāϧু āĻāĻāĻŦাāϰ āĻĄেāĻা āĻĒā§āϤে āĻাāύ, āϞাāĻāĻ āĻāĻĒāĻĄেāĻ āĻĻāϰāĻাāϰ āύা āĻšāϞে।
đ ValueEventListener vs addListenerForSingleValueEvent
| Feature | addValueEventListener() |
addListenerForSingleValueEvent() |
|---|---|---|
| āĻĄেāĻা āϰিā§েāϞ-āĻাāĻāĻŽ āĻāĻĒāĻĄেāĻ āĻšā§? | ✅ āĻš্āϝাঁ, āϏāĻŦāϏāĻŽā§ āĻāĻĒāĻĄেāĻ āĻļুāύāĻŦে | ❌ āύা, āĻļুāϧু āĻāĻāĻŦাāϰ āĻĒā§āĻŦে |
| āĻāύ্āĻাāϰāύেāĻ āĻŦ্āϝāĻŦāĻšাāϰ āĻŦেāĻļি? | ✅ āĻš্āϝাঁ, āĻাāϰāĻŖ āϏāĻŦāϏāĻŽā§ āĻĒāϰিāĻŦāϰ্āϤāύ āĻļোāύে | ❌ āύা, āĻাāϰāĻŖ āĻāĻāĻŦাāϰāĻ āĻāϞ āĻšā§ |
| āĻ্āϝাāĻ āĻ ্āϝাāĻĒেāϰ āĻāύ্āϝ āĻাāϞো? | ✅ āĻš্āϝাঁ, āĻাāϰāĻŖ āϏāĻŦ āĻŽেāϏেāĻ āϞাāĻāĻ āĻāĻĒāĻĄেāĻ āĻšā§ | ❌ āύা, āĻাāϰāĻŖ āύāϤুāύ āĻŽেāϏেāĻ āĻāĻĒāĻĄেāĻ āĻšāĻŦে āύা |
đ§ āĻāĻāύ āĻোāύāĻা āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāĻŦো?
✅ āϰিā§েāϞ-āĻাāĻāĻŽ āĻĒāϰিāĻŦāϰ্āϤāύ āĻļুāύāϤে āĻšāϞে → addValueEventListener()
✅ āĻļুāϧু āĻāĻāĻŦাāϰ āĻĄেāĻা āĻĒā§āϤে āĻšāϞে → addListenerForSingleValueEvent()
đĨ ValueEventListener-āĻāϰ āĻŽূāϞ āĻŦিāώā§āĻুāϞো
1️⃣ Firebase āĻĄেāĻা āĻĒā§āϤে āĻāĻŦং āĻĒāϰিāĻŦāϰ্āϤāύ āĻļুāύāϤে āϏাāĻšাāϝ্āϝ āĻāϰে
2️⃣ onDataChange() – āύāϤুāύ āĻĄেāĻা āĻāϏāϞেāĻ āĻāϞ āĻšā§
3️⃣ onCancelled() – āĻĄেāĻা āĻĒā§āϤে āϏāĻŽāϏ্āϝা āĻšāϞে āĻāϞ āĻšā§
4️⃣ āĻ্āϝাāĻ āĻ
্āϝাāĻĒ, āϰিā§েāϞ-āĻাāĻāĻŽ āĻāĻĒāĻĄেāĻেāϰ āĻāύ্āϝ āĻুāĻŦ āĻĻāϰāĻাāϰি
5️⃣ āϝāĻĻি āĻļুāϧু āĻāĻāĻŦাāϰ āĻĄেāĻা āĻĒā§āϤে āĻাāύ, āϤাāĻšāϞে addListenerForSingleValueEvent() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰুāύ
đ¯ āĻĒ্āϰāĻৃāϤ āĻীāĻŦāύেāϰ āĻāĻĻাāĻšāϰāĻŖ:
đŖ Example: āĻ্āϝাāĻ āĻ ্āϝাāĻĒ
āĻāĻāĻāύ āĻāĻāĻাāϰ āĻ্āϝাāĻ āĻāϰāϞে, āύāϤুāύ āĻŽেāϏেāĻ āϰিā§েāϞ-āĻাāĻāĻŽে UI-āϤে āĻĻেāĻাāύোāϰ āĻāύ্āϝ addValueEventListener() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰা āĻšāĻŦে।
đ Example: āĻāĻāĻাāϰ āĻĒ্āϰোāĻĢাāĻāϞ āϞোāĻĄিং
āĻāĻāĻাāϰ āĻ
্āϝাāĻĒে āϞāĻāĻāύ āĻāϰāϞে, āϤাāϰ āύাāĻŽ, āĻāĻŽেāĻāϞ āĻāĻāĻŦাāϰāĻ āϞোāĻĄ āĻāϰāϤে āĻšāĻŦে → āĻāĻাāύে addListenerForSingleValueEvent() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāĻŦো।
đ āĻļেāώ āĻāĻĨা
✅ āϝāĻĻি Firebase-āĻāϰ āĻĄেāĻা āϰিā§েāϞ-āĻাāĻāĻŽে āĻāĻĒāĻĄেāĻ āĻāϰāϤে āĻাāύ, āϤাāĻšāϞে addValueEventListener() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰুāύ।
✅ āϝāĻĻি āĻļুāϧু āĻāĻāĻŦাāϰ āĻĄেāĻা āĻĒā§āϤে āĻাāύ, āϤাāĻšāϞে addListenerForSingleValueEvent() āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰুāύ।
✅ Firebase āĻŦ্āϝāĻŦāĻšাāϰ āĻāϰāϞে āϏāĻ িāĻ listener āĻŦেāĻে āύেāĻā§া āĻুāϰুāϤ্āĻŦāĻĒূāϰ্āĻŖ—āύা āĻšāϞে āĻ
্āϝাāĻĒ āĻāύ্āĻাāϰāύেāĻ āĻŦেāĻļি āĻāϰāĻ āĻāϰāĻŦে! đ
āĻāĻĒāύাāϰ āĻি āĻোāύো āĻĒ্āϰāĻļ্āύ āĻāĻে? đđĨ
Comments
Post a Comment