DpcMigrationClient

public interface DpcMigrationClient


Cliente para fazer solicitações relacionadas à migração de DPC.

Resumo

Métodos públicos

abstract @NonNull ListenableFuture<DpcMigrationAttempt>
getMigrationAttempt(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Recebe uma tentativa de migração.

abstract DpcMigrationAttempt
getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Recebe uma tentativa de migração.

abstract @NonNull ListenableFuture<@NonNull List<@NonNull DpcMigrationAttempt>>

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

abstract @NonNull List<@NonNull DpcMigrationAttempt>

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

abstract @NonNull ListenableFuture<@NonNull DpcMigrationAttempt>
migrateDeviceManagementToAndroidManagementApi(
    @NonNull ComponentName notificationServiceComponentName,
    @NonNull ComponentName adminComponentName,
    @NonNull DpcMigrationRequest migrationRequest
)

Migre este dispositivo para ser gerenciado pela API Android Management.

abstract @NonNull DpcMigrationAttempt
migrateDeviceManagementToAndroidManagementApiAwait(
    @NonNull ComponentName notificationServiceComponentName,
    @NonNull ComponentName adminComponentName,
    @NonNull DpcMigrationRequest migrationRequest
)

Migre este dispositivo para ser gerenciado pela API Android Management.

Métodos públicos

getMigrationAttempt

abstract @NonNull ListenableFuture<DpcMigrationAttempt> getMigrationAttempt(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

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 anterior que migrou para a API Android Management.

Retorna
@NonNull ListenableFuture<DpcMigrationAttempt>

Um ListenableFuture que envolve o resultado. Pode ser o seguinte:

  • Um futuro bem-sucedido que envolve um DpcMigrationAttempt, em caso de sucesso.

  • Um futuro bem-sucedido que envolve um valor nulo, caso o DpcMigrationAttempt não seja encontrado.

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

  • Um futuro com falha que envolve DpcMigrationException se a chamada relacionada à migração do DPC falhar. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

getMigrationAttemptAwait

abstract DpcMigrationAttempt getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

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 anterior que migrou para a API Android Management.

Retorna
DpcMigrationAttempt

O DpcMigrationAttempt solicitado ou nulo, se não for encontrado

Gera
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.

DpcMigrationException

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

listMigrationAttempts

abstract @NonNull ListenableFuture<@NonNull List<@NonNull DpcMigrationAttempt>> listMigrationAttempts()

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 anterior que migrou 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
@NonNull ListenableFuture<@NonNull List<@NonNull DpcMigrationAttempt>>

Um ListenableFuture que envolve o resultado. Pode ser o seguinte:

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

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

  • Um futuro com falha que envolve DpcMigrationException se a chamada relacionada à migração do DPC falhar. A mensagem e o subtipo da exceção contêm mais detalhes sobre a falha.

listMigrationAttemptsAwait

abstract @NonNull List<@NonNull DpcMigrationAttempt> listMigrationAttemptsAwait()

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 anterior que migrou 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
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.

DpcMigrationException

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

migrateDeviceManagementToAndroidManagementApi

abstract @NonNull ListenableFuture<@NonNull DpcMigrationAttempt> migrateDeviceManagementToAndroidManagementApi(
    @NonNull ComponentName notificationServiceComponentName,
    @NonNull ComponentName adminComponentName,
    @NonNull DpcMigrationRequest migrationRequest
)

Migre este dispositivo para ser gerenciado pela API Android Management.

Quando a migração for concluída, o app de chamadas vai perder os privilégios de proprietário do dispositivo ou do perfil, já que eles serã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 recebe a solicitação e conclui as verificações preliminares no token de migração. Em caso de falha, o ListenableFuture vai encapsular um Exception.

Esse método só pode ser chamado 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 do 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. Observação: essas redes Wi-Fi serão removidas pouco antes da migração do gerenciamento de dispositivos para a Política de dispositivos Android. Se não for possível remover uma rede, a migração também vai falhar. Como a remoção das redes não é uma operação atômica, algumas delas podem já ter sido removidas.

Em dispositivos pessoais com um perfil de trabalho executando o Android 12, todas as redes Wi-Fi configuradas pelo DPC de chamada serão removidas pouco antes da migração do gerenciamento de dispositivos para a Política de Dispositivo Android, independentemente das redes Wi-Fi transmitidas em migrationRequest.

Parâmetros
@NonNull ComponentName notificationServiceComponentName

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

@NonNull ComponentName adminComponentName

O ComponentName do administrador DeviceAdminReceiver do DPC de chamada.

@NonNull DpcMigrationRequest migrationRequest

O DpcMigrationRequest que contém o token de migração e as redes Wi-Fi configuradas. Os últimos só são necessários se o usuário for o proprietário do perfil em um dispositivo pessoal e tiver configurado alguma rede.

Retorna
@NonNull ListenableFuture<@NonNull DpcMigrationAttempt>

Um ListenableFuture que envolve o resultado. Pode ser o seguinte:

migrateDeviceManagementToAndroidManagementApiAwait

abstract @NonNull DpcMigrationAttempt migrateDeviceManagementToAndroidManagementApiAwait(
    @NonNull ComponentName notificationServiceComponentName,
    @NonNull ComponentName adminComponentName,
    @NonNull DpcMigrationRequest migrationRequest
)

Migre este dispositivo para ser gerenciado pela API Android Management.

Quando a migração for concluída, o app de chamadas vai perder os privilégios de proprietário do dispositivo ou do perfil, já que eles serão transferidos para o Android Device Policy.

Aviso: essa ação não pode ser desfeita. Essa funçã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 será gerada.

Esse método só pode ser chamado 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 do 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. Observação: essas redes Wi-Fi serão removidas pouco antes da migração do gerenciamento de dispositivos para a Política de dispositivos Android. Se não for possível remover uma rede, a migração também vai falhar. Como a remoção das redes não é uma operação atômica, algumas delas podem já ter sido removidas.

Em dispositivos pessoais com um perfil de trabalho executando o Android 12, todas as redes Wi-Fi configuradas pelo DPC de chamada serão removidas pouco antes da migração do gerenciamento de dispositivos para a Política de Dispositivo Android, independentemente das redes Wi-Fi transmitidas em migrationRequest.

Parâmetros
@NonNull ComponentName notificationServiceComponentName

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

@NonNull ComponentName adminComponentName

O ComponentName do administrador DeviceAdminReceiver do DPC de chamada.

@NonNull DpcMigrationRequest migrationRequest

O DpcMigrationRequest que contém o token de migração e as redes Wi-Fi configuradas. Os últimos só são necessários se o usuário for o proprietário do perfil em um dispositivo pessoal e tiver configurado alguma rede.

Retorna
@NonNull DpcMigrationAttempt

DpcMigrationException com o status atual da migração em caso de sucesso.

Gera
SecurityException

Se o usuário não for proprietário do dispositivo ou do perfil.

IllegalArgumentException

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

DpcMigrationException

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