Recuperar feedback de apps

Alguns apps são capazes de enviar feedback para EMMs na forma de estados de apps com chave. O estado de um app com chave é composto por um identificador exclusivo (chave), uma mensagem correspondente (opcional), dados legíveis por máquina (opcional), status de gravidade e carimbo de data/hora. Para enviá-los, um app precisa se integrar à biblioteca Enterprise do Jetpack.

Um app só pode enviar o primeiro feedback imediato uma vez por minuto. O feedback gerado durante o período de espera vai ser colocado na fila e enviado quando ele terminar. Por exemplo, quando o feedback é gerado três vezes em [t=0s;10s;15s] com um período de espera de um minuto: o primeiro feedback imediato é enviado em [t=0s], o segundo e o terceiro em [t=60s].

Como um EMM, é possível usar os dados de estados de apps com chave para manter os administradores de TI atualizados sobre os apps instalados em dispositivos e perfis gerenciados. Um exemplo de como isso pode funcionar é descrito em Mostrar feedback para empresas.

Ativar relatórios do dispositivo

Os apps enviam estados de apps com chave por dispositivo. Os estados estão incluídos nos relatórios de dispositivos. Para ativar os relatórios em um dispositivo:

  1. Siga as instruções a fim de configurar as notificações do Pub/Sub para uma empresa. Na Etapa 5, inclua STATUS_REPORT em enabledNotificationTypes.
  2. Para cada dispositivo, atualize a política: defina StatusReportingSettings.applicationReportsEnabled como true.

Agora é possível usar a API Pub/Sub para receber notificações de relatórios do dispositivo. Ou, para consultar o relatório mais recente de um dispositivo a qualquer momento, chame devices.get().

Conferir estados do app com chave nos relatórios do dispositivo

Os relatórios de dispositivos estão disponíveis na forma de recursos do dispositivo. Os estados de apps com chave são agrupados por nome de pacote na seção Relatório do aplicativo, conforme mostrado no exemplo abaixo:

{
   "applicationReports":[
      {
         "packageName": "pkg1",
         "versionCode": 101,
         "keyedAppStates":[
            {
               "key": "key1",
               "severity": INFO,
               "message": "message1",
               "data": "data1",
               "createTime": "2018-10-01T15:01:22.027623745Z",
               "lastUpdateTime": "2018-10-02T15:01:23.045123456Z"
            }
         ]
      }
   ]
}

Cada estado de app codificado contém o seguinte:

Campo Descrição
key A chave exclusiva que identifica o estado.
severity A gravidade do estado: INFO indica uma mensagem informativa. Por exemplo, se uma configuração gerenciada for definida. ERROR indica que a empresa precisa tomar medidas para corrigir um problema. Por exemplo, se uma configuração gerenciada não for definida.
message Uma string opcional que fornece detalhes sobre o estado do app. Recomendamos que os desenvolvedores de apps trate esse campo como uma mensagem voltada ao usuário.
data Uma string opcional que fornece detalhes legíveis por computador para EMMs sobre o estado do app. Por exemplo, um valor que um administrador de TI pode consultar no seu console, como "notify me if the bateria_warning data < 10" (notificar-me se os dados de bateria_warning < 10).
createTime Carimbo de data/hora que indica quando o estado do app foi criado no dispositivo.
lastUpdateTime Carimbo de data/hora que indica quando o estado do app foi atualizado pela última vez no dispositivo.

Mostrar feedback do app para empresas

Os apps podem enviar feedback por vários motivos. No entanto, o caso de uso mais comum para enviar estados de apps com chaves é enviar feedback sobre configurações gerenciadas. Exemplo:

  1. Um administrador de TI usa o console de EMM para definir configurações gerenciadas para um app.
  2. No back-end, use ApplicationPolicy para enviar as configurações ao app.
  3. O app tenta aplicar as configurações. Para cada configuração, o app envia um estado com chave indicando o status dele, como uma mensagem de confirmação ou notificação de erro.
  4. Para conferir esses estados de apps com chave, acesse um relatório de dispositivos.
  5. Usando informações dos estados de apps com chave, o console de EMM exibe o status das configurações gerenciadas de uma forma fácil de usar.

Alertar os administradores de TI sobre erros

Um estado de app codificado com gravidade ERROR indica que a organização precisa agir para corrigir um problema. Os EMMs sempre devem alertar as organizações sobre erros, seja por meio do console de EMM ou de outros meios. Por exemplo, o console de EMM pode exibir um painel de erros vinculado ao feedback de um determinado dispositivo com erros.

Se um estado de erro for corrigido, o app vai enviar um estado de acompanhamento com a mesma chave do estado de erro original e uma gravidade atualizada de INFO. Os EMMs sempre precisam informar as organizações assim que um erro é corrigido. Por exemplo, remova o erro do painel de erros do console ou marque-o como resolvido.