DpcMigrationClient

public interface DpcMigrationClient


Cliente para realizar solicitudes relacionadas con la migración de DPC.

Resumen

Métodos públicos

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

Obtiene un intento de migración.

abstract DpcMigrationAttempt
getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Obtiene un intento de migración.

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

Devuelve una lista de todos los intentos de migración.

abstract @NonNull List<@NonNull DpcMigrationAttempt>

Devuelve una lista de todos los intentos de migración.

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

Migra este dispositivo para que lo administre la API de Android Management.

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

Migra este dispositivo para que lo administre la API de Android Management.

Métodos públicos

getMigrationAttempt

abstract @NonNull ListenableFuture<DpcMigrationAttemptgetMigrationAttempt(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Obtiene un intento de migración.

Si no se especifica ningún nombre en GetDpcMigrationAttemptRequest, se devuelve el DpcMigrationAttempt más reciente.

Solo pueden llamar a este método el propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que haya migrado a Android Management API.

Muestra
@NonNull ListenableFuture<DpcMigrationAttempt>

Un ListenableFuture que contiene el resultado. Puede ser

  • Es un futuro exitoso que contiene un DpcMigrationAttempt en caso de éxito.

  • Un futuro exitoso que contiene un valor nulo, en caso de que no se encuentre DpcMigrationAttempt.

  • Es un futuro con errores que encapsula un SecurityException, en caso de que el llamador no sea propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que migró a Android Management API.

  • Un objeto Future fallido que contiene DpcMigrationException si falló la llamada relacionada con la migración del DPC. El mensaje y el subtipo de la excepción contienen más detalles sobre la falla.

getMigrationAttemptAwait

abstract DpcMigrationAttempt getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Obtiene un intento de migración.

Si no se especifica ningún nombre en GetDpcMigrationAttemptRequest, se devuelve el DpcMigrationAttempt más reciente.

Solo pueden llamar a este método el propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que haya migrado a Android Management API.

Muestra
DpcMigrationAttempt

El DpcMigrationAttempt solicitado o nulo si no se puede encontrar

Arroja
java.lang.SecurityException

Si el llamador no es propietario del dispositivo o del perfil, o bien si es un propietario anterior del dispositivo o del perfil que migró a la API de Android Management.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Indica si falló la llamada relacionada con la migración del DPC. El mensaje y el subtipo de la excepción contienen más detalles sobre la falla.

listMigrationAttempts

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

Devuelve una lista de todos los intentos de migración.

Solo pueden llamar a este método el propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que haya migrado a Android Management API. Nota: Los intentos de migración anteriores se borran automáticamente y no se devuelven.

Muestra
@NonNull ListenableFuture<@NonNull List<@NonNull DpcMigrationAttempt>>

Un ListenableFuture que contiene el resultado. Puede ser

  • Es un futuro exitoso que contiene una lista de DpcMigrationAttempt, en caso de éxito.

  • Es un futuro con errores que encapsula un SecurityException, en caso de que el llamador no sea propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que migró a Android Management API.

  • Un objeto Future fallido que contiene DpcMigrationException si falló la llamada relacionada con la migración del DPC. El mensaje y el subtipo de la excepción contienen más detalles sobre la falla.

listMigrationAttemptsAwait

abstract @NonNull List<@NonNull DpcMigrationAttemptlistMigrationAttemptsAwait()

Devuelve una lista de todos los intentos de migración.

Solo pueden llamar a este método el propietario del dispositivo o del perfil, o bien un propietario anterior del dispositivo o del perfil que haya migrado a Android Management API. Nota: Los intentos de migración anteriores se borran automáticamente y no se devuelven.

Arroja
java.lang.SecurityException

Si el llamador no es propietario del dispositivo o del perfil, o bien si es un propietario anterior del dispositivo o del perfil que migró a la API de Android Management.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Indica si falló la llamada relacionada con la migración del DPC. El mensaje y el subtipo de la excepción contienen más detalles sobre la falla.

migrateDeviceManagementToAndroidManagementApi

abstract @NonNull ListenableFuture<@NonNull DpcMigrationAttemptmigrateDeviceManagementToAndroidManagementApi(
    @NonNull ComponentName notificationServiceComponentName,
    @NonNull ComponentName adminComponentName,
    @NonNull DpcMigrationRequest migrationRequest
)

Migra este dispositivo para que lo administre la API de Android Management.

Una vez que se completa la migración, la app de llamadas pierde sus privilegios de propietario del dispositivo o propietario del perfil, ya que estos se transfieren a Android Device Policy.

Advertencia: Esta acción no se puede deshacer. El ListenableFuture que se devuelve se completa cuando la Política de dispositivos Android recibe la solicitud y completa las verificaciones preliminares en el token de migración. En caso de falla, ListenableFuture incluirá un Exception.

Solo el propietario del dispositivo o del perfil puede llamar a este método. En Android 10 y versiones anteriores, no se debe llamar a este método en un dispositivo que tenga un propietario del dispositivo y un propietario del perfil.

Las redes Wi-Fi configuradas deben pasarse en DpcMigrationRequest por el propietario del perfil (excepto en Android 12) en un dispositivo personal si se configuró alguna red Wi-Fi. No se deben pasar en un dispositivo propiedad de la empresa. Ten en cuenta que estas redes Wi-Fi se quitarán justo antes de que se migre la administración de dispositivos a Android Device Policy. En caso de que no se pueda quitar una red, la migración también fallará y, dado que la eliminación de las redes no es una operación atómica, es posible que ya se hayan quitado algunas redes.

En los dispositivos personales con un perfil de trabajo que ejecutan Android 12, se quitarán todas las redes Wi-Fi configuradas por el DPC que realiza la llamada justo antes de que se migre la administración del dispositivo a Android Device Policy, independientemente de las redes Wi-Fi que se pasen en migrationRequest.

Parámetros
@NonNull ComponentName notificationServiceComponentName

Es el ComponentName del servicio que extiende NotificationReceiverService. Debe ser un componente válido que pertenezca a la app que realiza la llamada y que se haya exportado en el manifiesto. De lo contrario, se arrojará un IllegalArgumentException.

@NonNull ComponentName adminComponentName

Es el ComponentName del DeviceAdminReceiver de administrador del DPC que realiza la llamada.

@NonNull DpcMigrationRequest migrationRequest

Es el objeto DpcMigrationRequest que contiene el token de migración y las redes Wi-Fi configuradas. Estos últimos solo son necesarios si la persona que llama es propietaria del perfil en un dispositivo de propiedad personal y configuró alguna red.

Muestra
@NonNull ListenableFuture<@NonNull DpcMigrationAttempt>

Un ListenableFuture que contiene el resultado. Puede ser

migrateDeviceManagementToAndroidManagementApiAwait

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

Migra este dispositivo para que lo administre la API de Android Management.

Una vez que se completa la migración, la app de llamadas pierde sus privilegios de propietario del dispositivo o propietario del perfil, ya que estos se transfieren a Android Device Policy.

Advertencia: Esta acción no se puede deshacer. Esta función de suspensión se devuelve cuando la Política de Dispositivos Android recibió la solicitud y completó las verificaciones preliminares en el token de migración. En caso de falla, se arroja una Exception.

Solo el propietario del dispositivo o del perfil puede llamar a este método. En Android 10 y versiones anteriores, no se debe llamar a este método en un dispositivo que tenga un propietario del dispositivo y un propietario del perfil.

Las redes Wi-Fi configuradas deben pasarse en DpcMigrationRequest por el propietario del perfil (excepto en Android 12) en un dispositivo personal si se configuró alguna red Wi-Fi. No se deben pasar en un dispositivo propiedad de la empresa. Ten en cuenta que estas redes Wi-Fi se quitarán justo antes de que se migre la administración de dispositivos a Android Device Policy. En caso de que no se pueda quitar una red, la migración también fallará y, dado que la eliminación de las redes no es una operación atómica, es posible que ya se hayan quitado algunas redes.

En los dispositivos personales con un perfil de trabajo que ejecutan Android 12, se quitarán todas las redes Wi-Fi configuradas por el DPC que realiza la llamada justo antes de que se migre la administración del dispositivo a Android Device Policy, independientemente de las redes Wi-Fi que se pasen en migrationRequest.

Parámetros
@NonNull ComponentName notificationServiceComponentName

Es el ComponentName del servicio que extiende NotificationReceiverService. Debe ser un componente válido que pertenezca a la app que realiza la llamada y que se haya exportado en el manifiesto. De lo contrario, se arrojará un IllegalArgumentException.

@NonNull ComponentName adminComponentName

Es el ComponentName del DeviceAdminReceiver de administrador del DPC que realiza la llamada.

@NonNull DpcMigrationRequest migrationRequest

Es el objeto DpcMigrationRequest que contiene el token de migración y las redes Wi-Fi configuradas. Estos últimos solo son necesarios si la persona que llama es propietaria del perfil en un dispositivo de propiedad personal y configuró alguna red.

Muestra
@NonNull DpcMigrationAttempt

DpcMigrationException con el estado actual de la migración en caso de éxito.

Arroja
java.lang.SecurityException

Si la persona que llama no es propietaria del dispositivo ni del perfil.

kotlin.IllegalArgumentException

Si el token de migración está vacío, si notificationServiceComponentName no hace referencia a un componente válido que extiende NotificationReceiverService y que se exporta en el manifiesto, o si adminComponentName no es un administrador activo que pertenece al paquete actual.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Indica si falló la llamada relacionada con la migración del DPC. El mensaje y el subtipo de la excepción contienen más detalles sobre la falla.