O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Atualizações Enterprise OTA

A Definição de Compatibilidade Android Document (CDD) atualizável Software requer dispositivos para implementar o SystemUpdatePolicy classe. SystemUpdatePolicy permite que o aplicativo proprietário do dispositivo (DO), se presente, controlar a instalação de atualizações do sistema.

Notificando proprietários de dispositivos

O cliente over-the-air (OTA) deve notificar os aplicativos do proprietário do dispositivo sobre as atualizações OTA recebidas usando uma API do sistema. O cliente OTA também deve incluir uma gravação de carimbo de data / hora quando a atualização OTA foi disponibilizada pela primeira vez. Clientes OTA pode chamar DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime, boolean isSecurityPatch) para notificar aplicativos proprietário do dispositivo. Se o cliente OTA não sabe se uma atualização é um patch de segurança, o cliente OTA pode cair para trás a usar DevicePolicyManager.notifyPendingSystemUpdate(long updateReceivedTime) .

Se uma atualização não está disponível, o cliente OTA relata isso definindo o updateReceivedTime argumento para -1 . Recomendamos o envio de notificações sempre que o cliente OTA pesquisar o servidor OTA ou quando um OTA for enviado ao cliente. Você também pode enviar notificações com mais freqüência.

Política de atualização do sistema

Android 9 aumenta a capacidade para os proprietários de dispositivos para atualizações de controle , permitindo que os proprietários de dispositivos para adiar atualizações OTA por até 90 dias. Com foco em soluções de dispositivos dedicados (anteriormente chamados de COSU), esse recurso permite que os proprietários pausem a versão do sistema operacional em execução nos dispositivos durante períodos críticos, como feriados.

Para cumprir o CDD, o cliente OTA deve implementar políticas comportamentais. O DO pode definir as seguintes políticas, que devem ser respeitadas pelos subsistemas de atualização do sistema do dispositivo:

Proprietários de dispositivos também pode definir períodos de congelamento (em Android 9 ou posterior) que congelar a versão do sistema operacional em períodos críticos, como feriados ou outros horários de pico. O sistema não instala atualizações OTA durante um período de congelamento. Recomendamos o uso de SystemUpdatePolicy.InstallationOption (ver seção seguinte), no entanto o cliente OTA também pode ligar SystemUpdatePolicy.getFreezePeriods() para verificar se o dispositivo está em um período de congelamento.

Implementando opções de instalação

Android 9 introduz um @SystemApi, SystemUpdatePolicy.InstallationOption , que é projetado para os clientes de atualização do sistema. SystemUpdatePolicy.InstallationOption serve como uma classe de invólucro para as políticas e períodos de congelamento. Uma opção de instalação informa aos clientes como agir nas atualizações de sistema recebidas e por quanto tempo essa ação é válida, dada a política de atualização do sistema atual ou qualquer período de congelamento que possa ser definido. Uma opção de instalação pode ser uma das seguintes:

  • TYPE_INSTALL_AUTOMATIC - atualizações do sistema recebidas instalar imediatamente e sem intervenção do usuário assim que eles estiverem disponíveis. O dispositivo é reinicializado automaticamente.
  • TYPE_POSTPONE - atualizações do sistema de entrada pode ser adiada por um período máximo de 30 dias. Os usuários não podem instalar uma atualização manualmente. Os fabricantes de dispositivos podem escolher se desejam ou não bloquear os patches de segurança.
  • TYPE_PAUSE - atualizações do sistema de entrada pode ser adiada indefinidamente até novo aviso. Os usuários não podem instalar uma atualização manualmente. TYPE_PAUSE atrasa todas as atualizações, incluindo atualizações de segurança.

Clientes atualização do sistema pode consultar SystemUpdatePolicy.InstallationOption usando SystemUpdatePolicy.getInstallationOptionAt(long when ) , onde when representa o tempo a opção de instalação está sendo consultado no número de milissegundos desde Epoch. Usando o SystemUpdatePolicy.getInstallationOptionAt(long when ) método, atualização do sistema os clientes podem agir sobre a opção retornou até que os lapsos de tempo eficazes. Após a expiração da opção retornada, o cliente pode fazer outra consulta, usando um novo carimbo de data / hora, para a opção mais recente.

O cliente atualização do sistema deve ouvir DevicePolicyManager.ACTION_SYSTEM_UPDATE_POLICY_CHANGED transmissões no caso de toda a política é atualizado.

Validando o TYPE_PAUSE política

Você pode validar manualmente as TYPE_PAUSE obras de opções sobre um sistema OTA.

Política TYPE_PAUSE está em vigor

Para validar uma TYPE_PAUSE política é trabalhar:

  1. Definir uma política automática e especificar TYPE_PAUSE .
  2. Enquanto o relógio do sistema está no período de pausa, envie uma atualização OTA.
  3. Verifique se o dispositivo não aceita a atualização OTA e se o usuário não consegue instalar a atualização manualmente.
  4. Se o dispositivo for um dispositivo A / B, reinicie o dispositivo e verifique se a reinicialização não acionou uma instalação automática da atualização.

Política TYPE_PAUSE expirou

Para validar um expirado TYPE_PAUSE política é trabalhar:

  1. Definir uma política automática e especificar TYPE_PAUSE .
  2. Enquanto o relógio do sistema está no período de pausa, envie uma atualização OTA.
  3. Aguarde até que o período de pausa expire.
  4. Verifique se o dispositivo é reinicializado automaticamente e se a atualização OTA é realizada após a reinicialização.