Firebase is back at Google I/O on May 10! Register now

กลยุทธ์การโหลด Firebase Remote Config

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

Firebase Remote Config มอบความยืดหยุ่นมากมายสำหรับวิธีและเวลาที่จะดึงค่าใหม่จากเซิร์ฟเวอร์และเปิดใช้งานในแอปของคุณ ช่วยให้คุณมั่นใจได้ถึงประสบการณ์ผู้ใช้ปลายทางที่มีคุณภาพโดยการควบคุมเวลาของการเปลี่ยนแปลงการกำหนดค่าที่มองเห็นได้ คู่มือนี้พิจารณากลยุทธ์การโหลดสองสามข้อและหารือเกี่ยวกับข้อควรพิจารณาหลักในการเลือกตัวเลือกที่ดีที่สุดสำหรับแอปของคุณ

กลยุทธ์ที่ 1: ดึงข้อมูลและเปิดใช้งานเมื่อโหลด

ในกลยุทธ์นี้ แอปของคุณจะเรียกใช้ fetchAndActivate() เมื่อแอปของคุณเริ่มทำงานครั้งแรกเพื่อดึงค่าใหม่จากการกำหนดค่าระยะไกลและเปิดใช้งานทันทีที่โหลดเสร็จ วิธีการง่ายๆ นี้ใช้ได้ดีกับการเปลี่ยนแปลงการกำหนดค่าที่ไม่ทำให้เกิดการเปลี่ยนแปลงทางภาพอย่างมากใน UI ของคุณ ควรหลีกเลี่ยงในทุกสถานการณ์ที่ UI ของคุณสามารถเปลี่ยนแปลงได้อย่างเห็นได้ชัดในขณะที่ผู้ใช้กำลังใช้งานอยู่

กลยุทธ์ที่ 2: เปิดใช้งานหลังหน้าจอโหลด

เพื่อเป็นการแก้ไขปัญหา UI ที่อาจเกิดขึ้นซึ่งพบในกลยุทธ์ที่ 1 คุณสามารถใช้หน้าจอโหลดได้ แทนที่จะเริ่มแอปของคุณในทันที ให้แสดงหน้าจอการโหลดและเรียก fetchAndActivate ในตัวจัดการการทำให้เสร็จสมบูรณ์ หลังจากนั้นทันที — โดยใช้การโทรกลับหรือการแจ้งเตือนอีกครั้ง — ปิดหน้าจอการโหลดและอนุญาตให้ผู้ใช้เริ่มโต้ตอบกับแอปของคุณ

หากคุณใช้กลยุทธ์นี้ ขอแนะนำให้เพิ่มการหมดเวลาในหน้าจอการโหลด การหมดเวลาหนึ่งนาทีของ Remote Config อาจนานเกินไปสำหรับประสบการณ์การเริ่มต้นแอปที่มีคุณภาพสำหรับผู้ใช้

กลยุทธ์ที่ 3: โหลดค่าใหม่สำหรับการเริ่มต้นครั้งต่อไป

กลยุทธ์ที่ได้ผลคือการโหลดการกำหนดค่าใหม่เพื่อเปิดใช้งานในการเริ่มต้น ครั้งถัดไป ของแอป ในกลยุทธ์นี้ แอปของคุณจะเปิดใช้งานค่าที่ดึงมาเมื่อเริ่มต้นก่อนที่จะพยายามดึงค่าใหม่ โดยดำเนินการโดยสันนิษฐานว่าค่าการกำหนดค่าใหม่อาจดึงข้อมูลแล้ว แต่ยังไม่ได้เปิดใช้งาน ลำดับของการดำเนินการสำหรับกลยุทธ์นี้คือ:

  1. เมื่อเริ่มต้น ให้เปิดใช้งานค่าที่ดึงมาก่อนหน้านี้ทันที วิธีนี้ใช้ค่าใดๆ ที่คุณดาวน์โหลดจากเซิร์ฟเวอร์ในเซสชันก่อนหน้า และเกือบจะทันที
  2. ขณะที่ผู้ใช้โต้ตอบกับแอปของคุณ ให้เริ่มการโทรแบบอะซิงโครนัสเพื่อดึงค่าใหม่ตามช่วงเวลาการดึงข้อมูลขั้นต่ำที่เป็นค่าเริ่มต้น
  3. ในตัวจัดการการเสร็จสิ้นหรือการโทรกลับสำหรับการดึงข้อมูล ไม่ต้องทำอะไรเลย แอปของคุณจะเก็บค่าที่ดาวน์โหลดไว้จนกว่าคุณจะเปิดใช้งานในครั้งต่อไปที่แอปเริ่มทำงาน

ด้วยกลยุทธ์นี้ เวลารอของผู้ใช้จะลดลงอย่างมาก อย่างไรก็ตาม ผู้ใช้ต้องเรียกใช้แอปของคุณเป็นครั้งที่สองเพื่อดูการกำหนดค่าล่าสุด คุณจะต้องสร้างความสมดุลระหว่างข้อควรพิจารณาเหล่านี้กับธุรกิจและตรรกะของแอป

กำลังโหลดกลยุทธ์ต่อต้าน

ตามที่คุณอาจเข้าใจจากการอภิปรายด้านบนเกี่ยวกับข้อดีและข้อเสียของการโหลด มีรูปแบบการใช้งานสองสามแบบที่ควรหลีกเลี่ยง

  • อย่า อัปเดตหรือเปลี่ยนลักษณะของ UI ในขณะที่ผู้ใช้กำลังดูหรือโต้ตอบกับมัน เว้นแต่ คุณจะมีเหตุผลที่ชัดเจนเกี่ยวกับแอพหรือธุรกิจในการทำเช่นนั้น เช่น ลบตัวเลือกที่เกี่ยวข้องกับโปรโมชันที่เพิ่งสิ้นสุดไป
  • อย่า ส่งคำขอดึงข้อมูลพร้อมกันจำนวนมาก ซึ่งอาจส่งผลให้เซิร์ฟเวอร์ควบคุมปริมาณแอปของคุณ ความเสี่ยงของเหตุการณ์นี้อยู่ในระดับต่ำในสถานการณ์การผลิตส่วนใหญ่ แต่อาจเป็นปัญหาระหว่างการพัฒนาที่ดำเนินอยู่ ดูคำแนะนำการควบคุมปริมาณสำหรับ แพลตฟอร์ม Android และ Apple
  • อย่า พึ่งพาการเชื่อมต่อเครือข่ายเพื่อรับค่าคอนฟิกระยะไกล ตั้ง ค่าพารามิเตอร์เริ่มต้นในแอปเพื่อให้แอปของคุณทำงานตามที่คาดไว้เสมอ คุณสามารถซิงค์ค่าเริ่มต้นของแอปและแบ็กเอนด์การกำหนดค่าระยะไกลเป็นระยะๆ โดยใช้ ค่าเริ่มต้นของเทมเพลตที่ดาวน์โหลด

ขั้นตอนถัดไป

กลยุทธ์พื้นฐานทั้งสามนี้ไม่ได้ประกอบด้วยรายการที่สมบูรณ์ของวิธีการโหลดค่าคอนฟิกูเรชันแต่อย่างใด ขึ้นอยู่กับความต้องการของคุณ คุณสามารถคิดค้นกลยุทธ์ที่ซับซ้อนมากขึ้น เช่น การอัปเดตพื้นหลังที่ขับเคลื่อนด้วยฟังก์ชันที่อธิบายไว้ใน การอัปเดต Propagate ตามเวลาจริง

ตรวจสอบการอ้างอิง API สำหรับแพลตฟอร์มของคุณเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการเรียกเฉพาะสำหรับการดึงข้อมูลและเปิดใช้งานค่าการกำหนดค่า