การอัปเดต OTA ขององค์กร

ซอฟต์แวร์ที่อัปเดตได้ของเอกสารนิยามความเข้ากันได้ (CDD) ของ Android กำหนดให้อุปกรณ์ต้องใช้คลาส SystemUpdatePolicy SystemUpdatePolicy ช่วยให้แอปเจ้าของอุปกรณ์ (DO) (หากมี) ควบคุมการติดตั้งการอัปเดตระบบได้

แจ้งให้เจ้าของอุปกรณ์ทราบ

ไคลเอ็นต์การอัปเดตผ่านอากาศ (OTA) ต้องแจ้งให้แอปเจ้าของอุปกรณ์ทราบเกี่ยวกับการอัปเดต OTA ที่กำลังจะมาถึงโดยใช้ API ของระบบ นอกจากนี้ ไคลเอ็นต์ OTA จะต้องบันทึกการประทับเวลาเมื่อการอัปเดต OTA พร้อมให้บริการเป็นครั้งแรกด้วย ไคลเอ็นต์ OTA สามารถเรียกใช้ DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime, boolean isSecurityPatch) เพื่อแจ้งเตือนแอปของเจ้าของอุปกรณ์ หากไคลเอ็นต์ OTA ไม่ทราบว่าอัปเดตเป็นแพตช์ความปลอดภัยหรือไม่ ไคลเอ็นต์ OTA จะกลับไปใช้ DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime) ได้

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

นโยบายการอัปเดตระบบ

Android 9 เพิ่มความสามารถในการควบคุมการอัปเดตให้แก่เจ้าของอุปกรณ์ด้วยการอนุญาตให้เลื่อนการอัปเดต OTA ได้สูงสุด 90 วัน ฟีเจอร์นี้มุ่งเน้นที่โซลูชันอุปกรณ์เฉพาะ (ก่อนหน้านี้เรียกว่า COSU) ซึ่งช่วยให้เจ้าของสามารถหยุดเวอร์ชันระบบปฏิบัติการที่ทำงานในอุปกรณ์ไว้ชั่วคราวในช่วงที่มีการเปลี่ยนแปลงที่สำคัญ เช่น ช่วงวันหยุด

ลูกค้า OTA ต้องใช้นโยบายด้านพฤติกรรมเพื่อปฏิบัติตาม CDD DO สามารถกำหนดนโยบายต่อไปนี้ ซึ่งระบบย่อยการอัปเดตระบบของอุปกรณ์ต้องปฏิบัติตาม

นอกจากนี้ เจ้าของอุปกรณ์ยังตั้งค่าช่วงหยุด (ใน Android 9 ขึ้นไป) ซึ่งจะหยุดเวอร์ชันระบบปฏิบัติการไว้ชั่วคราวได้ในช่วงที่มีเวลาจำกัด เช่น ช่วงวันหยุดหรือช่วงเวลาอื่นๆ ที่ยุ่ง ระบบจะไม่ติดตั้งการอัปเดต OTA ในช่วงหยุดทำงาน เราขอแนะนำให้ใช้ SystemUpdatePolicy.InstallationOption (ดูส่วนต่อไปนี้) แต่ไคลเอ็นต์ OTA ยังเรียกใช้ SystemUpdatePolicy.getFreezePeriods() เพื่อตรวจสอบว่าอุปกรณ์อยู่ในระยะเวลาที่หยุดทำงานหรือไม่