บังคับใช้เวอร์ชันแอปขั้นต่ำด้วยการกำหนดค่าระยะไกล

เมื่อแอปของคุณพัฒนาขึ้น การเปิดตัวเวอร์ชันใหม่ๆ อาจทำให้เกิดการเปลี่ยนแปลงที่ทำให้ API ของแบ็กเอนด์ใช้งานไม่ได้ แก้ไขช่องโหว่ด้านความปลอดภัยที่ร้ายแรง หรือแทนที่บริการและโมเดล AI ที่เลิกใช้งานแล้ว ในสถานการณ์เหล่านี้ แอปเวอร์ชันก่อนหน้าอาจหยุด ทำงานอย่างน่าเชื่อถือหรือปลอดภัย

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

เลือกกลยุทธ์การอัปเดต

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

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

ขั้นตอนที่ 1: กำหนดค่าพารามิเตอร์ในคอนโซล Firebase

หากต้องการจัดการเวอร์ชันของแอป ให้กำหนดพารามิเตอร์ในเทมเพลต Remote Config ดังนี้

  1. ในคอนโซล Firebase ให้ไปที่หน้า DevOps และความผูกพัน > การกำหนดค่าระยะไกล > พารามิเตอร์
  2. คลิกเพิ่มพารามิเตอร์ (หรือสร้างการกำหนดค่าหากนี่เป็นพารามิเตอร์แรก )
  3. กำหนดพารามิเตอร์ต่อไปนี้
    • minimum_version: สตริงที่แสดงเวอร์ชันที่เก่าที่สุดที่แอปของคุณรองรับ (เช่น "2.4.0") แอปที่ใช้เวอร์ชันที่เก่ากว่าค่านี้จะถูกบล็อกจนกว่าจะมีการอัปเดต
    • latest_version (ไม่บังคับ): สตริงที่แสดงถึงเวอร์ชันล่าสุด ของแอปที่พร้อมใช้งาน (เช่น "2.5.1") แอปที่ใช้ เวอร์ชันระหว่าง minimum_version ถึง latest_version สามารถแสดง คำแนะนำให้อัปเดต (ไม่บังคับ)
    • update_url (ไม่บังคับ): URL ของร้านค้าที่ผู้ใช้สามารถดาวน์โหลด การอัปเดตได้ (เช่น ข้อมูลใน Google Play Store หรือ Apple App Store)
  4. ไม่บังคับ: เพิ่มเงื่อนไขเฉพาะแพลตฟอร์มโดยทำดังนี้
    • เนื่องจากแอป Android และ Apple มักใช้เวอร์ชันที่เผยแพร่และ URL ของร้านค้าที่แตกต่างกัน คุณจึงเพิ่มค่าแบบมีเงื่อนไขสำหรับแต่ละแพลตฟอร์มภายใต้พารามิเตอร์เดียวกันได้
    • คลิกเพิ่มค่าสำหรับเงื่อนไข > สร้างเงื่อนไข ตั้งชื่อเงื่อนไข (เช่น Android App หรือ iOS App) เลือกแอปเป็นกฎการกำหนดเป้าหมาย และเลือกแอป
    • ตั้งค่าสตริงเวอร์ชันที่เหมาะสมสำหรับเงื่อนไขของแต่ละแพลตฟอร์ม และ เก็บค่าเริ่มต้นไว้เป็นค่าสำรอง
  5. คลิกบันทึก แล้วคลิกเผยแพร่การเปลี่ยนแปลงเพื่อใช้เทมเพลต

ขั้นตอนที่ 2: ตรวจสอบเวอร์ชันฝั่งไคลเอ็นต์

ในไคลเอ็นต์ ให้ตรวจสอบเวอร์ชันของแอปที่ติดตั้งเทียบกับRemote Config พารามิเตอร์ระหว่างการเริ่มต้น

  1. ตั้งค่าเริ่มต้นในแอป: ระบุค่าเริ่มต้นในแอปที่ปลอดภัยเสมอใน App Bundle (เช่น ตั้งค่า minimum_version เป็นการเปิดตัวแอปครั้งแรก เช่น "1.0.0") การกำหนดค่าสำรองนี้ช่วยให้มั่นใจได้ว่าแอปจะทำงานต่อไปได้ตามปกติหากอุปกรณ์ออฟไลน์หรือคำขอเรียกข้อมูลเริ่มต้นล้มเหลว ดูคำแนะนำเฉพาะแพลตฟอร์มได้ที่ ดาวน์โหลดRemote Configค่าเริ่มต้นของเทมเพลต
  2. ดึงข้อมูลและเปิดใช้งาน Remote Config: ดึงข้อมูลและเปิดใช้งานค่าเทมเพลตล่าสุดเมื่อแอปเริ่มต้น
  3. เปรียบเทียบเวอร์ชัน: ดึงสตริง minimum_version และ latest_version ที่ใช้งานอยู่ แล้วเปรียบเทียบกับเวอร์ชันแอปที่ติดตั้งอยู่ในปัจจุบัน

    ก็ได้
  4. ดำเนินการตามการเปรียบเทียบเวอร์ชัน

    • บังคับให้อัปเดตที่จำเป็น: หาก current_version เก่ากว่า minimum_version ให้แสดงการแจ้งเตือนแบบโมดัลเต็มหน้าจอที่ปิดไม่ได้ ปิดใช้การไปยังส่วนอื่นๆ ของแอปและแสดงปุ่มที่ เปิด update_url ใน App Store ของแพลตฟอร์ม
    • แจ้งให้อัปเดต (ไม่บังคับ): หาก current_version มาถึงก่อน latest_version ให้แสดงกล่องโต้ตอบหรือการแจ้งเตือนที่ปิดได้เพื่อแจ้งให้ ผู้ใช้ทราบว่ามีการอัปเดตพร้อมใช้งาน โดยมีตัวเลือกให้อัปเดตตอนนี้ หรือภายหลัง
    • อนุญาตให้เข้าถึง: อนุญาตให้ผู้ใช้เข้าสู่แอป

แนวทางปฏิบัติแนะนำ

  • เพิ่ม Listener แบบเรียลไทม์: เมื่อต้องอัปเดตเวอร์ชันเนื่องจากปัญหาด้านความปลอดภัยหรือ UX เสื่อมถอยอย่างรุนแรง การเพิ่ม Listener แบบเรียลไทม์Remote Config ลงในแอปจะช่วยให้มั่นใจได้ว่าการเปลี่ยนแปลงข้อกำหนดของเวอร์ชันจะมีผลทันทีในอุปกรณ์ที่ใช้งานอยู่โดยไม่ต้องรอการดึงข้อมูลตามกำหนดการครั้งถัดไปหรือการรีสตาร์ทแอป
  • ทดสอบกับกลุ่มทดสอบแบบจำกัด: ก่อนที่จะเพิ่มminimum_version สำหรับผู้ใช้เวอร์ชันที่ใช้งานจริงทั้งหมด ให้ทดสอบเงื่อนไขกับกลุ่มทดสอบแบบจำกัด หรือกำหนดเป้าหมายผู้ทดสอบภายในโดยใช้พร็อพเพอร์ตี้ผู้ใช้ที่กำหนดเอง การทดสอบนี้ จะยืนยันว่าโมดัลการบล็อกแสดงอย่างถูกต้องและลิงก์ร้านค้า ทำงานได้อย่างเหมาะสม
  • ใช้ API การอัปเดตในแอปของแพลตฟอร์ม: ใน Android ให้พิจารณาผสานรวมการอัปเดตในแอปของ Google Play ควบคู่ไปกับการตรวจสอบ Remote Config เพื่อให้ผู้ใช้ดาวน์โหลดและติดตั้ง การอัปเดตได้โดยไม่ต้องออกจากแอป
  • อ่านรายการตรวจสอบการเตรียมการ: อ่านรายการตรวจสอบการเปิดตัว Firebase และรายการตรวจสอบการเตรียมการสำหรับตรรกะ AI เพื่อ ดูคำแนะนำเพิ่มเติมเกี่ยวกับการเตรียมแอปและฟีเจอร์ AI สำหรับการใช้งานจริง