บทที่ 20 – สร้างแอพแชทด้วย FireBase

คุณสมบัติของแอพ

ในบทนี้ จะสอนสร้างแอพแชท โดยใช้คอมโพเนนต์ FirebaseDB ผู้ใช้สามารถส่งข้อความหากันได้ โดยใส่ชื่อ และข้อความ เสร็จแล้วคลิ้กปุ่ม Send ข้อความก็จะถูกส่งไปที่เซิร์ฟเวอร์ของ FireBase แล้วส่งต่อไปยังผู้ใช้คนอื่นที่ใช้แอพนี้ นอกจากนี้ ยังมีปุ่ม Clear สำหรับลบข้อความที่แชทกันด้วย

คอมโพเนนต์ที่กล่าวถึง

  • FirebaseDB เป็นคอมโพเนนต์ที่เชื่อมต่อกับเว็บไซต์ FireBase ซึ่งใช้บริการเก็บข้อมูลไว้บนคลาวด์ และอ่านข้อมูลกลับมา จุดที่แตกต่างจากบริการจัดเก็บข้อมูลทั่วไป ก็คือ เมื่อข้อมูลที่จัดเก็บมีการเปลี่ยนแปลง จะมีการอัพเดตให้รู้ได้ทันที โดยจะเกิดอีเวนต์ dataChanged ขึ้น เราจึงสามารถใช้อีเวนต์นี้ เพื่ออัพเดตข้อมูลใหม่ที่เปลี่ยนแปลงได้ในทันทีที่ออนไลน์
  • Textbox ในบทนี้ ใช้เพื่อแสดงข้อความหลายๆ บรรทัด แต่ไม่จำเป็นต้องมีการแก้ไขข้อความใน Textbox ดังนั้น จึงต้องลบเครื่องหมายถูกหน้าช่อง Enabled ด้วย
  • Notifier ในบทนี้ ใช้ ShowMessageDialog เพื่อแสดงข้อความ error จาก FirebaseDB

Properties ที่สำคัญ

สำหรับ properties สำคัญของ FirebaseDB ได้แก่
  • FirebaseToken เป็นรหัส token ที่ใช้ในการตรวจสอบและอนุญาตให้แอพของเราติดต่อกับ FireBase ได้
  • FirebaseURL เป็น URL ของ Firebase ที่ใช้กับ project นี้
  • ProjectBucket หากต้องการแชร์ข้อมูลระหว่างแอพนี้ กับแอพอื่นๆ ก็จะต้องใช้ชื่อ ProjectBucket เหมือนกันด้วย
  • Persist หากคลิ้กถูกหน้าช่องนี้ ข้อมูลใน Firebase จะยังคงเก็บไว้อยู่ในขณะที่แอพของเรา off-line และเมื่อกลับมา on-line ก็จะเริ่มซิงค์ข้อมูลมาที่แอพ
  • Use Default โดยปกติ ช่องนี้จะมีเครื่องหมายถูกอยู่ ซึ่งเป็นการกำหนดให้ใช้แอ็กเคานต์ของ App Inventor (หรือ Thunkable) ในการใช้งาน FirebaseDB หากคุณต้องการใช้ FirebaseDB ด้วยแอ็กเคานต์ของคุณเอง ก็ให้ลบเครื่องหมายถูกหน้าช่องนี้ออก แล้วสร้าง project ใหม่ใน Firebase จากนั้น นำ FirebaseURL มาใส่ในช่อง

บล็อกที่สำคัญ

  • FirebaseDB StoreValue เป็นบล็อกสำหรับส่งข้อมูลไปเก็บใน Firebase โดยจะต้องระบุ tag และข้อมูลที่จะบันทึก
  • DataChanged เป็นอีเวนต์ที่เกิดขึ้นเมื่อข้อมูลใน Firebase มีการเปลี่ยนแปลง โดยในอีเวนต์นี้ จะให้ข้อมูล 2 อย่างมาด้วย คือ
    • tag ชื่อ tag ที่มีข้อความเปลี่ยนแปลง
    • value ข้อมูลที่มีการเปลี่ยนแปลง
  • FirebaseError เป็นอีเวนต์ที่เกิดขึ้นเมื่อมี error เกิดขึ้นกับ FirebaseDB โดยมีอีเวนต์จะมีตัวแปร message เก็บข้อความแจ้ง error ไว้

Comments

Popular posts from this blog

บทที่ 4 - เรียนรู้เกี่ยวกับ User Interface

บทที่ 16 - สร้างแอพนับจำนวนก้าว (Pedometer)

บทที่ 3 - เริ่มใช้ App Inventor สร้างแอพแรก