สวัสดีเพื่อนๆ และยินดีต้อนรับกลับมา
ในวิดีโอที่ผ่านมา เราได้เรียนรู้วิธีการเขียนค่าไปยังตำแหน่งฐานข้อมูลที่ระบุใน Firebase
Realtime Database
ในวิดีโอนี้ เราจะเรียนรู้วิธีการอ่านการเปลี่ยนแปลงใดๆ ในค่าของตำแหน่งฐานข้อมูลที่ระบุใน
Firebase Realtime Database
เพื่อให้ข้อมูลในแอปของคุณอัปเดตแบบเรียลไทม์ คุณควรเพิ่ม Event
listener สำหรับค่าลงในอ้างอิงที่คุณเพิ่งสร้างขึ้น
ดังนั้นฉันจะเริ่มต้นด้วยเอกสารอ้างอิงของฉันซึ่งอ้างถึงเอกสารอ้างอิงนี้
เพิ่มเส้นทางและโหนดที่เรียกว่า messages
จุดอ้างอิงของฉันเพิ่มมูลค่าผู้ฟังเหตุการณ์
และที่นี่ฉันต้องส่งผู้ฟังเหตุการณ์ Value ใหม่
โค้ดสแนปช็อตนี้ใช้เพื่อแนบตัวฟังเหตุการณ์ไปยังการอ้างอิงฐานข้อมูลแบบเรียลไทม์ของ Firebase
และในกรณีนี้คือการอ้างอิงของฉันในแอปพลิเคชัน Android
ตัวฟังนี้ใช้เฉพาะสำหรับการฟังการเปลี่ยนแปลงในข้อมูลที่ตั้งอยู่ที่การอ้างอิงฐานข้อมูลที่ระบุไว้
และในกรณีนี้คือโหนดข้อความ
ดังนั้น ref ของฉันคือการอ้างอิงถึงตำแหน่งที่เฉพาะเจาะจง ซึ่งเป็นโหนดภายในฐานข้อมูล Firebase Realtime ของคุณ
คุณสามารถคิดถึงมันเหมือนกับตัวชี้ที่ชี้ไปยังที่ที่ข้อมูลถูกเก็บไว้
หรือที่ที่คุณต้องการฟังการเปลี่ยนแปลงและค่า
ผู้ฟัง
วิธีนี้ใช้เพื่อเพิ่มผู้ฟังเหตุการณ์ไปยังการอ้างอิงฐานข้อมูล
มันช่วยให้คุณสามารถฟังการเปลี่ยนแปลงในข้อมูลที่ตำแหน่งนั้นและตัวฟังเหตุการณ์ค่าใหม่ได้
ส่วนนี้กำหนดคลาสภายในที่ไม่มีชื่อซึ่งดำเนินการตามอินเตอร์เฟซผู้ฟังเหตุการณ์ค่า
อินเทอร์เฟซผู้ฟังเหตุการณ์ค่ามีเมธอดเรียกกลับสองวิธีเมื่อมีการเปลี่ยนแปลงข้อมูลและเมื่อมีการยกเลิกในเมธอดเมื่อมีการเปลี่ยนแปลงข้อมูล
วิธีนี้จะถูกเรียกใช้เมื่อข้อมูลที่อ้างอิงฐานข้อมูลที่ระบุมีการเปลี่ยนแปลง
ข้อมูล
พารามิเตอร์สแนปช็อตประกอบด้วยข้อมูลที่อัปเดตแล้ว และคุณสามารถดึงข้อมูลนี้ออกมาเพื่อประมวลผลตามความต้องการได้
นี่คือที่ที่คุณจัดการการเปลี่ยนแปลงของข้อมูลนั้น
ดังนั้น สำหรับเรื่องนี้ ฉันจะจัดการการเปลี่ยนแปลงในข้อมูลโดยใช้สตริงที่เรียกว่าค่าหรือค่าใหม่ซึ่งเท่ากับข้อมูลสแนปช็อต
ซึ่งเป็นสแนปช็อตที่นี่จุดเมธอด get value
และที่นี่ฉันจำเป็นต้องใช้คลาสจุดของสตริง
ที่นี่ฉันกำลังดึงและประมวลผลข้อมูลที่อัปเดตจากภาพรวมข้อมูล และภาพรวมข้อมูลเป็นวัตถุที่แสดงถึงภาพรวมเฉพาะของข้อมูล
ณ ตำแหน่งที่ระบุ
ในฐานข้อมูล Firebase Realtime คุณสามารถใช้วิธีการเช่น Get Value,
Get Children และอื่นๆ ที่ให้โดย Data Snapshot
เพื่อเข้าถึงข้อมูลที่เก็บไว้ในตำแหน่งฐานข้อมูลที่ผู้ฟังนี้เชื่อมต่ออยู่ และเพื่อแสดงค่าใหม่ ฉันจะใช้ text view ที่ฉันมีอยู่ที่นี่ในแอปพลิเคชัน
Hello World และ ID ของมัน
ฉันจะให้มันเป็นมุมมองข้อความ ID และที่นี่ฉันจะใช้วิธีเก่าของเราในการค้นหาวิวด้วย ID
ดังนั้น ให้ใช้ Alt+ เพื่อค้นหาวิวโดยใช้ id
เข้าสู่คลาสพอร์ต และฉันจะใช้การตั้งค่าข้อความจุดในมุมมองข้อความนี้
และที่นี่ฉันต้องส่งสตริงค่าใหม่ไปยังเมธอด on canceled
วิธีนี้จะถูกเรียกใช้หากเกิดข้อผิดพลาดขณะพยายามอ่านข้อมูลจากฐานข้อมูล
คุณสามารถนำตรรกะการจัดการข้อผิดพลาดมาใช้ได้ที่นี่
ตอนนี้เรามาเรียกใช้แอปพลิเคชันของเราและดูว่ามุมมองข้อความจะตั้งค่าเป็นค่าใหม่ของค่าข้อความของเราหรือไม่
และนี่คือผลลัพธ์
คุณสามารถมองเห็นคำว่า "สวัสดี" จากหลักสูตรของเราได้
ฉันจะแสดงให้คุณเห็นมายากลนะ
ไปที่คอนโซล Firebase กันเถอะ
และที่นี่ฉันจะเปิดโปรแกรมจำลองของเราและฉันจะเปลี่ยนตัวละคร
ข้อความนี้มีค่าสำหรับ "สวัสดี" จาก Abbas Masry
ดูผู้ชายกด Enter แล้วคุณจะเห็นว่า Firebase เร็วแค่ไหน
เป็นการอ่านจากฐานข้อมูลแบบเรียลไทม์
เมื่อคุณเปลี่ยนแปลงทั้งหมดนี้ ลูกค้าทั้งหมดและอุปกรณ์ที่เชื่อมต่อกับฐานข้อมูลนี้จะเปลี่ยนแปลงทันที
ลองอีกครั้ง ฉันรักเวทมนตร์นี้ ฉันรัก Firebase
คลิกที่ปุ่ม Enter แล้วคุณจะเห็นว่าสิ่งนี้อยู่ในอีมูเลเตอร์ของเรา
ดังนั้นคุณจึงเห็นได้ว่า Firebase รวดเร็วและง่ายดายเพียงใด