DpcMigrationClient

interface DpcMigrationClient


O cliente faz solicitações relacionadas à migração de DPC.

Resumo

Funções públicas

ListenableFuture<DpcMigrationAttempt?>
getMigrationAttempt(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
)

Recebe uma tentativa de migração.

suspend DpcMigrationAttempt?
getMigrationAttemptAwait(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
)

Recebe uma tentativa de migração.

ListenableFuture<List<DpcMigrationAttempt>>

Retorna uma lista de todas as tentativas de migração.

suspend List<DpcMigrationAttempt>

Retorna uma lista de todas as tentativas de migração.

ListenableFuture<DpcMigrationAttempt>
migrateDeviceManagementToAndroidManagementApi(
    notificationServiceComponentName: ComponentName,
    adminComponentName: ComponentName,
    migrationRequest: DpcMigrationRequest
)

Migre este dispositivo para que ele seja gerenciado pela API Android Management.

suspend DpcMigrationAttempt
migrateDeviceManagementToAndroidManagementApiAwait(
    notificationServiceComponentName: ComponentName,
    adminComponentName: ComponentName,
    migrationRequest: DpcMigrationRequest
)

Migre este dispositivo para que ele seja gerenciado pela API Android Management.

Funções públicas

getMigrationAttempt

fun getMigrationAttempt(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
): ListenableFuture<DpcMigrationAttempt?>

Recebe uma tentativa de migração.

Se nenhum nome for especificado no GetDpcMigrationAttemptRequest, o DpcMigrationAttempt mais recente será retornado.

Esse método só pode ser chamado por um proprietário do dispositivo ou do perfil, ou por um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management.

Retorna
ListenableFuture<DpcMigrationAttempt?>

Uma ListenableFuture que envolve o resultado. Pode ser

  • Um futuro de sucesso envolvendo um DpcMigrationAttempt, em caso de sucesso.

  • Um valor nulo de encapsulamento futuro bem-sucedido caso o DpcMigrationAttempt não seja encontrado.

  • Um futuro com falha de encapsulamento de um SecurityException, caso o autor da chamada não seja um proprietário do dispositivo ou do perfil, ou um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management.

  • Uma falha futura de wrapper DpcMigrationException se a chamada relacionada à migração de dpc falhar. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

getMigrationAttemptAwait

suspend fun getMigrationAttemptAwait(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
): DpcMigrationAttempt?

Recebe uma tentativa de migração.

Se nenhum nome for especificado no GetDpcMigrationAttemptRequest, o DpcMigrationAttempt mais recente será retornado.

Esse método só pode ser chamado por um proprietário do dispositivo ou do perfil, ou por um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management.

Retorna
DpcMigrationAttempt?

O DpcMigrationAttempt solicitado ou nulo, se não for possível encontrá-lo.

Gera
java.lang.SecurityException

Se o autor da chamada não for um proprietário do dispositivo ou do perfil, ou um proprietário anterior do dispositivo ou do perfil que migrou para a API Android Management.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Se a chamada relacionada à migração do DPC falhou. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

listMigrationAttempts

fun listMigrationAttempts(): ListenableFuture<List<DpcMigrationAttempt>>

Retorna uma lista de todas as tentativas de migração.

Esse método só pode ser chamado por um proprietário do dispositivo ou do perfil, ou por um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management. Observação: as tentativas de migração mais antigas são excluídas automaticamente e não são retornadas.

Retorna
ListenableFuture<List<DpcMigrationAttempt>>

Uma ListenableFuture que envolve o resultado. Pode ser

  • Um futuro bem-sucedido envolvendo uma lista de DpcMigrationAttempt, em caso de sucesso.

  • Um futuro com falha de encapsulamento de um SecurityException, caso o autor da chamada não seja um proprietário do dispositivo ou do perfil, ou um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management.

  • Uma falha futura de wrapper DpcMigrationException se a chamada relacionada à migração de dpc falhar. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

listMigrationAttemptsAwait

suspend fun listMigrationAttemptsAwait(): List<DpcMigrationAttempt>

Retorna uma lista de todas as tentativas de migração.

Esse método só pode ser chamado por um proprietário do dispositivo ou do perfil, ou por um proprietário do dispositivo ou do perfil anterior que tenha migrado para a API Android Management. Observação: as tentativas de migração mais antigas são excluídas automaticamente e não são retornadas.

Gera
java.lang.SecurityException

Se o autor da chamada não for um proprietário do dispositivo ou do perfil, ou um proprietário anterior do dispositivo ou do perfil que migrou para a API Android Management.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Se a chamada relacionada à migração do DPC falhou. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

migrateDeviceManagementToAndroidManagementApi

fun migrateDeviceManagementToAndroidManagementApi(
    notificationServiceComponentName: ComponentName,
    adminComponentName: ComponentName,
    migrationRequest: DpcMigrationRequest
): ListenableFuture<DpcMigrationAttempt>

Migre este dispositivo para que ele seja gerenciado pela API Android Management.

Quando a migração terminar, o app de chamada vai perder os privilégios de proprietário do dispositivo ou do perfil, porque eles são transferidos para o Android Device Policy.

Aviso: essa ação não pode ser desfeita! O ListenableFuture retornado é concluído quando o Android Device Policy recebeu a solicitação e concluiu as verificações preliminares no token de migração. Em caso de falha, o ListenableFuture vai encapsular um Exception.

Este método pode ser chamado apenas por um proprietário do dispositivo ou do perfil. No Android 10 e versões anteriores, isso não pode ser chamado em um dispositivo com um proprietário do dispositivo e um proprietário de perfil.

As redes Wi-Fi configuradas precisam ser transmitidas em DpcMigrationRequest pelo proprietário do perfil (exceto no Android 12) em um dispositivo pessoal se ele tiver configurado alguma rede Wi-Fi. Eles não podem ser transmitidos em um dispositivo da empresa. Essas redes Wi-Fi serão removidas pouco antes da migração do gerenciamento dos dispositivos para o Android Device Policy. Em caso de falha na remoção de uma rede, a migração também falhará e, como a remoção das redes não é uma operação atômica, algumas redes podem já ter sido removidas.

Nos dispositivos pessoais com um perfil de trabalho com o Android 12, todas as redes Wi-Fi configuradas pelo DPC que fez a chamada serão removidas pouco antes da migração do gerenciamento do dispositivo para o Android Device Policy, independente das redes Wi-Fi transmitidas na migrationRequest.

Parâmetros
notificationServiceComponentName: ComponentName

O ComponentName do serviço estendendo NotificationReceiverService. Ele precisa ser um componente válido pertencente ao app de chamada e exportado no manifesto. Caso contrário, uma IllegalArgumentException será gerada.

adminComponentName: ComponentName

O ComponentName do DeviceAdminReceiver de administrador do DPC que fez a chamada.

migrationRequest: DpcMigrationRequest

O DpcMigrationRequest contendo o token de migração e as redes Wi-Fi configuradas. Os dois últimos são necessários apenas se o autor da chamada for o proprietário do perfil em um dispositivo pessoal e tiver configurado alguma rede.

Retorna
ListenableFuture<DpcMigrationAttempt>

Uma ListenableFuture que envolve o resultado. Pode ser

migrateDeviceManagementToAndroidManagementApiAwait

suspend fun migrateDeviceManagementToAndroidManagementApiAwait(
    notificationServiceComponentName: ComponentName,
    adminComponentName: ComponentName,
    migrationRequest: DpcMigrationRequest
): DpcMigrationAttempt

Migre este dispositivo para que ele seja gerenciado pela API Android Management.

Quando a migração terminar, o app de chamada vai perder os privilégios de proprietário do dispositivo ou do perfil, porque eles são transferidos para o Android Device Policy.

Aviso: essa ação não pode ser desfeita! Essa diversão de suspensão retorna quando o Android Device Policy recebe a solicitação e conclui as verificações preliminares no token de migração. Em caso de falha, uma Exception é gerada.

Este método pode ser chamado apenas por um proprietário do dispositivo ou do perfil. No Android 10 e versões anteriores, isso não pode ser chamado em um dispositivo com um proprietário do dispositivo e um proprietário de perfil.

As redes Wi-Fi configuradas precisam ser transmitidas em DpcMigrationRequest pelo proprietário do perfil (exceto no Android 12) em um dispositivo pessoal se ele tiver configurado alguma rede Wi-Fi. Eles não podem ser transmitidos em um dispositivo da empresa. Essas redes Wi-Fi serão removidas pouco antes da migração do gerenciamento dos dispositivos para o Android Device Policy. Em caso de falha na remoção de uma rede, a migração também falhará e, como a remoção das redes não é uma operação atômica, algumas redes podem já ter sido removidas.

Nos dispositivos pessoais com um perfil de trabalho com o Android 12, todas as redes Wi-Fi configuradas pelo DPC que fez a chamada serão removidas pouco antes da migração do gerenciamento do dispositivo para o Android Device Policy, independente das redes Wi-Fi transmitidas na migrationRequest.

Parâmetros
notificationServiceComponentName: ComponentName

O ComponentName do serviço estendendo NotificationReceiverService. Ele precisa ser um componente válido pertencente ao app de chamada e exportado no manifesto. Caso contrário, uma IllegalArgumentException será gerada.

adminComponentName: ComponentName

O ComponentName do DeviceAdminReceiver de administrador do DPC que fez a chamada.

migrationRequest: DpcMigrationRequest

O DpcMigrationRequest contendo o token de migração e as redes Wi-Fi configuradas. Os dois últimos são necessários apenas se o autor da chamada for o proprietário do perfil em um dispositivo pessoal e tiver configurado alguma rede.

Retorna
DpcMigrationAttempt

DpcMigrationException pelo status atual da migração em caso de êxito.

Gera
java.lang.SecurityException

Se o autor da chamada não for um proprietário do dispositivo ou do perfil.

java.lang.IllegalArgumentException

Se o token de migração estiver vazio ou se notificationServiceComponentName não se referir a um componente válido que estende NotificationReceiverService que é exportado no manifesto, ou se adminComponentName não for um administrador ativo pertencente ao pacote atual.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Se a chamada relacionada à migração do DPC falhou. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.