| เลือกแพลตฟอร์ม: | iOS+ Android Web Flutter Unity C++ |
การกำหนดค่าระยะไกลแบบเรียลไทม์ Remote Config ช่วยให้คุณได้รับคีย์ พารามิเตอร์และ ค่าที่อัปเดตทันทีที่ เผยแพร่ในเซิร์ฟเวอร์ ซึ่งช่วยให้คุณอัปเดตแอตทริบิวต์ของ แอปประเภทใดก็ได้ที่ควบคุมโดยใช้ค่าพารามิเตอร์ Remote Config ได้อย่างรวดเร็ว การอัปเดต แบบเรียลไทม์ Remote Configช่วยให้คุณทำสิ่งต่อไปนี้ได้
- ลดความเสี่ยงด้วยการเปิดตัวฟีเจอร์ทีละน้อยให้กับผู้ใช้เป้าหมาย และทำการย้อนกลับฉุกเฉินหากจำเป็น
- เพิ่มการมีส่วนร่วมของผู้ใช้ด้วยการปรับแต่งประสบการณ์ของผู้ใช้ให้เหมาะสมอย่างรวดเร็วขณะที่ผู้ใช้ใช้ แอป เช่น คุณสามารถอัปเดตแบนเนอร์และเสนอสิ่งจูงใจสำหรับ ผู้ใช้ที่มีคุณสมบัติของผู้ใช้ Google Analytics ตรงตามที่กำหนด หรือ ปรับความยากของเกมแบบไดนามิกสำหรับกลุ่มผู้เล่น
- ลดการพึ่งพาการสร้างและเพิ่มประสิทธิภาพของนักพัฒนาแอป: ใช้ Remote Configพารามิเตอร์เป็นแฟล็กฟีเจอร์เพื่อแสดงฟังก์ชันการทำงานสำหรับ ทีมพัฒนาและทดสอบ ขณะเดียวกันก็ซ่อนฟังก์ชันการทำงานดังกล่าวจากผู้ใช้ใน เวอร์ชันที่ใช้งานจริง
ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีใช้ Remote Config ได้ที่หัวข้อ คุณจะทำอะไรได้บ้าง ด้วย Remote Config?
ในคู่มือนี้ คุณจะได้เรียนรู้สิ่งต่อไปนี้
- ดูข้อมูลเพิ่มเติมเกี่ยวกับความสัมพันธ์ระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ที่รองรับการอัปเดตแบบเรียลไทม์
- ทำความเข้าใจวิธีการทำงานของฟังก์ชันการทำงานแบบเรียลไทม์ใน SDK
- ดูวิธีใช้การอัปเดตแบบเรียลไทม์เพื่อทำให้การกำหนดค่าแอปเป็นเวอร์ชันล่าสุดอยู่เสมอ
การเชื่อมต่อระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์แบบเรียลไทม์
เมื่อใช้ Remote Config แบบเรียลไทม์ในแอป คุณจะต้องสร้าง Listener แบบเรียลไทม์ที่จะเปิดการเชื่อมต่อ HTTP กับแบ็กเอนด์ของRemote Config คำขอจะรวมเวอร์ชันการกำหนดค่าที่แคชไว้ในอุปกรณ์ เซิร์ฟเวอร์ Remote Config แบบเรียลไทม์จะใช้ ข้อความการทำให้เป็นโมฆะ เพื่อ ส่งสัญญาณไปยังแอปเมื่อควรดึงข้อมูลการกำหนดค่าฝั่งเซิร์ฟเวอร์เวอร์ชันใหม่กว่า
หากเซิร์ฟเวอร์มีเวอร์ชันใหม่กว่า ระบบจะส่งสัญญาณการทำให้เป็นโมฆะทันที
หากไม่มีเวอร์ชันใหม่กว่า ระบบจะเปิดการเชื่อมต่อไว้และรอจนกว่าจะมีการเผยแพร่เวอร์ชันใหม่ในเซิร์ฟเวอร์ เมื่อ SDK ของไคลเอ็นต์ได้รับสัญญาณการทำให้เป็นโมฆะ ระบบจะดึงข้อมูลโดยอัตโนมัติ จากนั้นเรียกใช้ Callback ของ Listener ที่ลงทะเบียนไว้เมื่อคุณเปิดการเชื่อมต่อ Listener การดึงข้อมูลนี้คล้ายกับการเรียกใช้การดึงข้อมูลที่คุณทำได้ด้วย SDK แต่จะข้ามการตั้งค่าการแคชหรือ minimumFetchInterval ระบบจะรักษาการเชื่อมต่อระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ไว้ขณะที่แอปทำงานอยู่เบื้องหน้า
เนื่องจากระบบจะสร้างการเชื่อมต่อระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์ผ่าน HTTP จึงไม่จำเป็นต้องพึ่งพาไลบรารีอื่นๆ
ฟังการอัปเดต
การอัปเดตแบบเรียลไทม์จะเสริมการเรียกใช้ Remote Config fetch เราขอแนะนำให้
เรียกใช้การดึงข้อมูลเมื่อแอปเริ่มต้น (หรือในช่วงใดช่วงหนึ่งของวงจรชีวิตของแอป) และ
ฟังการอัปเดตแบบเรียลไทม์ Remote Config ระหว่างเซสชันของผู้ใช้เพื่อ
ให้แน่ใจว่าคุณมีค่าล่าสุดทันทีที่เผยแพร่ใน
เซิร์ฟเวอร์
หากต้องการฟังการอัปเดต ให้เรียกใช้
onConfigUpdate,
โดยใช้ Callback ที่เรียกใช้เมื่อมีการอัปเดตRemote Configในแอป เบื้องหลังการเรียกใช้นี้จะเริ่มฟังการอัปเดต
จากเซิร์ฟเวอร์Remote Config ดูข้อมูลเพิ่มเติมเกี่ยวกับความสัมพันธ์ระหว่างไคลเอนต์กับเซิร์ฟเวอร์
ได้ในส่วนก่อนหน้า
Callback มักจะเป็นตำแหน่งที่ดีในการใช้ activate เพื่อทำให้พารามิเตอร์การกำหนดค่าที่อัปเดตพร้อมใช้งานสำหรับแอป ดูกลยุทธ์เพิ่มเติมในการเปิดใช้งานค่าพารามิเตอร์เมื่อใช้การกำหนดค่าระยะไกลแบบเรียลไทม์ได้ที่ Firebase Remote Config Loading
StrategiesRemote Config
เปิดใช้งานค่าพารามิเตอร์แบบเลือก
เมื่อเรียกใช้ onConfigUpdate คุณสามารถรอการเปลี่ยนแปลงและเปิดใช้งานได้
ระบบจะเรียกใช้ Callback next เมื่อดึงข้อมูลเทมเพลตเวอร์ชันใหม่โดยอัตโนมัติและเมื่อเวอร์ชันใหม่นั้นมีการเปลี่ยนแปลงค่าพารามิเตอร์ที่ใช้งานอยู่ในแอป
ระบบจะเรียกใช้ Callback เหล่านี้ด้วยพารามิเตอร์ configUpdate
configUpdate มี updated_keys ซึ่งเป็นชุดคีย์พารามิเตอร์ที่เปลี่ยนแปลงซึ่งเริ่มการอัปเดตแบบเรียลไทม์ และมีข้อมูลต่อไปนี้
- คีย์พารามิเตอร์ที่เพิ่มหรือนำออก
- คีย์พารามิเตอร์ที่มีค่าเปลี่ยนแปลง
- คีย์พารามิเตอร์ที่มีข้อมูลเมตาเปลี่ยนแปลง (เช่น Remote Config ข้อมูลการปรับเปลี่ยนในแบบของคุณ)
- คีย์พารามิเตอร์ที่มีแหล่งที่มาของค่าเปลี่ยนแปลง (เช่น ค่าเริ่มต้นในแอปที่อัปเดตเป็นค่าฝั่งเซิร์ฟเวอร์)
หากคุณใช้ Listener แบบเรียลไทม์ในมุมมองใดมุมมองหนึ่งภายในแอป คุณสามารถตรวจสอบว่าพารามิเตอร์ที่เกี่ยวข้องกับมุมมองนั้นมีการเปลี่ยนแปลงหรือไม่ก่อนที่จะเปิดใช้งาน
บางครั้งการดึงข้อมูล (ไม่ว่าจะเริ่มขึ้นเมื่อคุณเรียกใช้เมธอด fetch หรือโดย
การกำหนดค่าระยะไกลแบบเรียลไทม์ Remote Config) จะไม่ทำให้ไคลเอ็นต์ได้รับการอัปเดต ในกรณีเหล่านี้ ระบบจะไม่เรียกใช้เมธอด next หรือการดำเนินการให้เสร็จสมบูรณ์
เพิ่มและนำ Listener ออก
onConfigUpdate
เป็นจุดเริ่มต้นหลักสำหรับRemote Configแบบเรียลไทม์ การเรียกใช้ Listener นี้เป็นครั้งแรกในวงจรชีวิตของแอปจะเปิดการเชื่อมต่อกับแบ็กเอนด์
การเรียกใช้ครั้งต่อๆ ไปจะใช้การเชื่อมต่อเดิมซ้ำ โดยจะมัลติเพล็กซ์ข้อความการทำให้เป็นโมฆะ
ที่อธิบายไว้ใน การเชื่อมต่อระหว่างไคลเอ็นต์กับเซิร์ฟเวอร์แบบเรียลไทม์
การเรียกใช้จะแสดงผล "การลงทะเบียน Listener" ซึ่งมีเมธอดที่เรียกว่า Unsubscribe
หากต้องการหยุดฟังการอัปเดต ให้เรียกใช้ฟังก์ชัน Unsubscribe ที่แสดงผลเมื่อคุณลงทะเบียน Observer ในตอนแรก หากนี่เป็น Listener ที่ใช้งานอยู่เพียงรายการเดียว การเรียกใช้ Unsubscribe จะปิดการเชื่อมต่อแบบเรียลไทม์กับเซิร์ฟเวอร์
แม้ว่าคุณจะ สามารถ หยุดฟังการอัปเดตด้วยตนเองได้ แต่ก็มักจะไม่จำเป็น เรียลไทม์ Remote Config จะหยุดฟังการอัปเดตโดยอัตโนมัติ เมื่อแอปเข้าสู่เบื้องหลัง และจะเริ่มทำงานอีกครั้งเมื่อแอปกลับมาทำงานอยู่เบื้องหน้า
ขั้นตอนถัดไป
ดูหัวข้อ เริ่มต้นใช้งาน Firebase Remote Config เพื่อกำหนดค่า Remote Config และเริ่ม ฟังการอัปเดตแบบ เรียลไทม์