O SDK da API Android Management (AMAPI) permite que apps específicos se comuniquem diretamente com o Android Device Policy (ADP). Ele inclui suporte para:
- Execução local de comandos
- Migrar dispositivos gerenciados com um DPC personalizado para a AMAPI
- Device Trust do Android Enterprise
- Novo fluxo de inscrição de dispositivos que também oferece suporte à adição de Contas do Google gerenciadas
- Gerenciar apps personalizados com a AMAPI
- Gerenciar papéis de aplicativos.
- Ler o EID do dispositivo
As etapas a seguir precisam ser realizadas para integrar o SDK da AMAPI ao seu aplicativo:
- Adicione a biblioteca do SDK da AMAPI.
- Adicione o elemento de consultas, se o SDK de destino for 30 ou mais recente.
Pré-requisitos
- Verifique se o
minSdkVersiondo app está definido como o nível 21 da API ou mais recente. - Adicione as dependências da versão mais recente do SDK da AMAPI ao seu aplicativo. Você pode encontrar a versão da biblioteca mais recente disponível e como adicioná-la ao aplicativo na página de notas da versão do SDK da AMAPI.
Adicionar elemento de consultas
Se o app segmentar o SDK 30 ou mais recente, o elemento de consultas será necessário no AndroidManifest.xml para especificar que ele vai interagir com o ADP.
<queries>
<package android:name="com.google.android.apps.work.clouddpc" />
</queries>
Consulte Filtragem da visibilidade de pacotes no Android para mais informações.
Implementar um NotificationReceiverService
Alguns recursos exigem a criação de um
NotificationReceiverService, e outros
tornam o uso dele opcional. Para usá-lo, defina uma classe que estenda NotificationReceiverService, adicione-a como um service ao AndroidManifest.xml e verifique se ela foi exportada.
import com.google.android.managementapi.notification.NotificationReceiverService;
...
public final class MyAppNotificationReceiverService extends NotificationReceiverService {
@Override
protected void setupInjection() {
// This method can be optionally used to inject dependencies at the
// beginning of the service lifecycle.
}
}
Você precisa fornecer ao app ADP o ComponentName da classe NotificationReceiverService. Há duas abordagens para fazer isso.
A documentação de cada recurso especifica qual abordagem usar.
API explícita
Nesse caso, o ComponentName é transmitido ao app ADP por uma API adequada. A documentação do recurso em questão tem os detalhes.
No AndroidManifest.xml, adicione:
<service
android:name = ".MyAppNotificationReceiverService"
android:exported = "true" />
Descoberta automática
Com essa abordagem, você precisa marcar seu serviço para que ele possa ser descoberto automaticamente. No AndroidManifest.xml, adicione:
<service
android:name = ".MyAppNotificationReceiverService"
android:exported = "true" >
<meta-data android:name="Insert name here" android:value=""/>
</service>
A string específica a ser usada para android:name do meta-data é documentada
para cada recurso que usa essa abordagem. Consulte
Gerenciar papéis de aplicativos para ver um exemplo.
Para que essa marcação seja válida, o app precisa ter exatamente um serviço ativado e com meta-data cujo android:name seja essa string específica e android:value seja uma string vazia. É possível adicionar vários meta-data ao mesmo serviço.