עדכוני OTA של Enterprise

במסמך Android Compatibility Definition Document (CDD) Updatable Software נדרש להטמיע במכשירים את הכיתה SystemUpdatePolicy. SystemUpdatePolicy מאפשר לאפליקציית הבעלים של המכשיר (DO), אם היא קיימת, לשלוט בהתקנה של עדכוני המערכת.

שליחת התראות לבעלים של המכשירים

לקוח OTA חייב להודיע לאפליקציות של בעלי המכשיר על עדכוני OTA נכנסים באמצעות API מערכת. לקוח ה-OTA חייב לכלול גם תיעוד של חותמת זמן מהמועד שבו העדכון דרך OTA זמין לראשונה. לקוחות OTA יכולים להפעיל את השיטה DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime, boolean isSecurityPatch) כדי להודיע לאפליקציות של בעלי המכשיר. אם לקוח ה-OTA לא יודע אם עדכון הוא תיקון אבטחה, הוא יכול להשתמש ב-DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime).

אם עדכון מסוים לא זמין כרגע, לקוח ה-OTA מדווח על כך על ידי הגדרת הארגומנט updateReceivedTime לערך -1. מומלץ לשלוח התראות בכל פעם שמתבצע סקרים של לקוח OTA בשרת OTA, או כשמתבצעת דחיפה של OTA ללקוח. אפשר גם לשלוח התראות בתדירות גבוהה יותר.

המדיניות בנושא עדכוני מערכת

ב-Android 9 יש שיפור ביכולת של בעלי המכשירים לשלוט בעדכונים, ומאפשר להם לדחות עדכונים דרך OTA למשך עד 90 יום. התכונה הזו מתמקדת בפתרונות למכשירים ייעודיים (לשעבר COSU), ומאפשרת לבעלים להשהות את גרסת מערכת ההפעלה שפועלת במכשירים בתקופות קריטיות, כמו בחגים.

כדי לעמוד בדרישות של CDD, לקוח ה-OTA צריך להטמיע מדיניות התנהגותית. ה-DO יכול להגדיר את כללי המדיניות הבאים, שעל תת-המערכות של עדכון מערכת המכשיר לפעול בהתאם להם:

בעלי המכשירים יכולים גם להגדיר תקופות הקפאה (ב-Android 9 ואילך) שבהן גרסת מערכת ההפעלה תוקפא בתקופות קריטיות, כמו בחגים או בזמנים עמוסים אחרים. המערכת לא מתקינה עדכוני OTA במהלך תקופת ההקפאה. מומלץ להשתמש ב-SystemUpdatePolicy.InstallationOption (ראו הקטע הבא), אבל לקוח ה-OTA יכול גם לבצע קריאה ל-SystemUpdatePolicy.getFreezePeriods() כדי לבדוק אם המכשיר נמצא בתקופה של הקפאה.