Il
software aggiornabile del Compatibility Definition Document (CDD) di Android
richiede che i dispositivi implementino la classe
SystemUpdatePolicy
. SystemUpdatePolicy
consente all'app Proprietario dispositivo (PD), se presente, di controllare l'installazione degli aggiornamenti di sistema.
Inviare una notifica ai proprietari dei dispositivi
Il client over-the-air (OTA) deve notificare alle app proprietario del dispositivo gli aggiornamenti OTA in arrivo utilizzando un'API di sistema. Il client OTA deve anche includere una registrazione del timestamp quando l'aggiornamento OTA è diventato disponibile per la prima volta. I client OTA possono chiamare
DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime, boolean isSecurityPatch)
per notificare le app del proprietario del dispositivo. Se il client OTA non sa se un aggiornamento
è una patch di sicurezza, può ricorrere all'utilizzo di
DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime)
.
Se al momento non è disponibile un aggiornamento, il client OTA lo segnala impostando
l'argomento updateReceivedTime
su -1
.
Ti consigliamo di inviare notifiche ogni volta che il client OTA esegue il polling del
server OTA o quando un aggiornamento OTA viene inviato al client. Puoi anche inviare
notifiche più di frequente.
Norme sugli aggiornamenti di sistema
Android 9 migliora la capacità dei proprietari di dispositivi di controllare gli aggiornamenti consentendo loro di posticipare gli aggiornamenti OTA per un massimo di 90 giorni. Incentrata sulle soluzioni per i dispositivi dedicati (in precedenza chiamate COSU), questa funzionalità consente ai proprietari di mettere in pausa la versione del sistema operativo in esecuzione sui dispositivi durante periodi critici, come le festività.
Per rispettare il CDD, il cliente OTA deve implementare le norme sul comportamento. Il DO può impostare i seguenti criteri, che devono essere rispettati dai sottosistemi di aggiornamento di sistema del dispositivo:
I proprietari di dispositivi possono anche
impostare periodi di blocco (in Android 9 o versioni successive) che bloccano la versione del sistema operativo
durante periodi critici, come le festività o altri periodi di punta. Il sistema
non installa gli aggiornamenti OTA durante un periodo di blocco. Ti consigliamo di utilizzare
SystemUpdatePolicy.InstallationOption
(vedi
la sezione seguente), ma il client OTA può anche chiamare
SystemUpdatePolicy.getFreezePeriods()
per verificare se il dispositivo è in un periodo di blocco.