DpcMigrationClient

public interface DpcMigrationClient


DPC 이전 관련 요청을 하는 클라이언트

요약

공개 메서드

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

이전 시도를 가져옵니다.

abstract DpcMigrationAttempt
getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

이전 시도를 가져옵니다.

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

모든 이전 시도 목록을 반환합니다.

abstract @NonNull List<@NonNull DpcMigrationAttempt>

모든 이전 시도 목록을 반환합니다.

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

이 기기를 Android Management API에서 관리하도록 이전

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

이 기기를 Android Management API에서 관리하도록 이전

공개 메서드

getMigrationAttempt

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

이전 시도를 가져옵니다.

GetDpcMigrationAttemptRequest에 이름을 지정하지 않으면 가장 최근의 DpcMigrationAttempt가 반환됩니다.

이 메서드는 기기 소유자나 프로필 소유자, 또는 Android Management API로 이전한 이전 기기 소유자나 프로필 소유자만 호출할 수 있습니다.

반환 값
@NonNull ListenableFuture<DpcMigrationAttempt>

결과를 래핑하는 ListenableFuture. 예를 들어

  • 향후에 성공할 경우 DpcMigrationAttempt를 성공적으로 래핑합니다.

  • DpcMigrationAttempt를 찾을 수 없는 경우 성공적인 향후 래핑 null입니다.

  • 호출자가 기기 소유자나 프로필 소유자가 아니거나, Android Management API로 이전한 이전 기기 소유자나 프로필 소유자가 아닌 경우 SecurityException를 래핑하는 데 실패했습니다.

  • 실패한 향후 래핑 DpcMigrationException DPC 이전 관련 호출이 실패한 경우 메시지와 예외의 하위유형에는 실패에 대한 세부정보가 포함됩니다.

getMigrationAttemptAwait

abstract DpcMigrationAttempt getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

이전 시도를 가져옵니다.

GetDpcMigrationAttemptRequest에 이름을 지정하지 않으면 가장 최근의 DpcMigrationAttempt가 반환됩니다.

이 메서드는 기기 소유자나 프로필 소유자, 또는 Android Management API로 이전한 이전 기기 소유자나 프로필 소유자만 호출할 수 있습니다.

반환 값
DpcMigrationAttempt

요청된 DpcMigrationAttempt 또는 null(찾을 수 없는 경우)

생성 값
java.lang.SecurityException

발신자가 기기 소유자나 프로필 소유자가 아니거나, Android Management API로 이전한 이전 기기 소유자나 프로필 소유자가 아닌 경우

com.google.android.managementapi.dpcmigration.DpcMigrationException

DPC 이전 관련 호출이 실패한 경우 메시지와 예외의 하위유형에는 실패에 대한 세부정보가 포함됩니다.

listMigrationAttempts

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

모든 이전 시도 목록을 반환합니다.

이 메서드는 기기 소유자나 프로필 소유자, 또는 Android Management API로 이전한 이전 기기 소유자나 프로필 소유자만 호출할 수 있습니다. 참고: 이전 이전 시도는 자동으로 삭제되며 반환되지 않습니다.

반환 값
@NonNull ListenableFuture<@NonNull List<@NonNull DpcMigrationAttempt>>

결과를 래핑하는 ListenableFuture. 예를 들어

  • 성공적인 future가 성공하는 경우 DpcMigrationAttempt 목록을 래핑합니다.

  • 호출자가 기기 소유자나 프로필 소유자가 아니거나, Android Management API로 이전한 이전 기기 소유자나 프로필 소유자가 아닌 경우 SecurityException를 래핑하는 데 실패했습니다.

  • 실패한 향후 래핑 DpcMigrationException DPC 이전 관련 호출이 실패한 경우 메시지와 예외의 하위유형에는 실패에 대한 세부정보가 포함됩니다.

listMigrationAttemptsAwait

abstract @NonNull List<@NonNull DpcMigrationAttemptlistMigrationAttemptsAwait()

모든 이전 시도 목록을 반환합니다.

이 메서드는 기기 소유자나 프로필 소유자, 또는 Android Management API로 이전한 이전 기기 소유자나 프로필 소유자만 호출할 수 있습니다. 참고: 이전 이전 시도는 자동으로 삭제되며 반환되지 않습니다.

생성 값
java.lang.SecurityException

발신자가 기기 소유자나 프로필 소유자가 아니거나, Android Management API로 이전한 이전 기기 소유자나 프로필 소유자가 아닌 경우

com.google.android.managementapi.dpcmigration.DpcMigrationException

DPC 이전 관련 호출이 실패한 경우 메시지와 예외의 하위유형에는 실패에 대한 세부정보가 포함됩니다.

migrateDeviceManagementToAndroidManagementApi

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

이 기기를 Android Management API에서 관리하도록 이전

이전이 완료되면 통화 앱은 기기 소유자 또는 프로필 소유자 권한을 잃게 됩니다. 이러한 권한은 Android Device Policy로 이전됩니다.

경고: 이 작업은 취소할 수 없습니다. Android Device Policy에서 요청을 수신하고 이전 토큰에 대한 예비 검사를 완료하면 반환된 ListenableFuture가 완료됩니다. 실패하면 ListenableFuture가 Exception를 래핑합니다.

이 메서드는 기기 소유자나 프로필 소유자만 호출할 수 있습니다. Android 10 이하에서는 기기 소유자와 프로필 소유자가 모두 있는 기기에서는 이 작업을 호출하면 안 됩니다.

Wi-Fi 네트워크가 구성된 경우 개인 소유 기기에서 프로필 소유자가 DpcMigrationRequest로 구성된 Wi-Fi 네트워크를 전달해야 합니다 (Android 12는 제외). 회사 소유 기기로 전달해서는 안 됩니다. 이러한 Wi-Fi 네트워크는 기기 관리가 Android Device Policy로 이전되기 직전에 삭제됩니다. 네트워크를 삭제하지 못하는 경우 이전도 실패하며 네트워크 삭제는 원자성 작업이 아니므로 일부 네트워크가 이미 삭제되었을 수 있습니다.

Android 12를 실행하는 직장 프로필이 있는 개인 소유 기기에서는 migrationRequest에서 전달된 Wi-Fi 네트워크와 관계없이 호출 DPC로 구성된 모든 Wi-Fi 네트워크가 기기 관리가 Android Device Policy로 이전되기 직전에 삭제됩니다.

매개변수
@NonNull ComponentName notificationServiceComponentName

NotificationReceiverService를 확장하는 서비스의 ComponentName입니다. 호출하는 앱에 속하는 유효한 구성요소여야 하며 매니페스트에서 내보내야 합니다. 그렇지 않으면 IllegalArgumentException이 발생합니다.

@NonNull ComponentName adminComponentName

호출 DPC 관리자 DeviceAdminReceiverComponentName.

@NonNull DpcMigrationRequest migrationRequest

이전 토큰 및 구성된 Wi-Fi 네트워크가 포함된 DpcMigrationRequest입니다. 후자는 호출자가 개인 소유 기기의 프로필 소유자이고 네트워크를 구성한 경우에만 필요합니다.

반환 값
@NonNull ListenableFuture<@NonNull DpcMigrationAttempt>

결과를 래핑하는 ListenableFuture. 예를 들어

migrateDeviceManagementToAndroidManagementApiAwait

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

이 기기를 Android Management API에서 관리하도록 이전

이전이 완료되면 통화 앱은 기기 소유자 또는 프로필 소유자 권한을 잃게 됩니다. 이러한 권한은 Android Device Policy로 이전됩니다.

경고: 이 작업은 취소할 수 없습니다. Android Device Policy에서 요청을 수신하고 이전 토큰에 대한 예비 검사를 완료하면 정지 기능이 다시 작동합니다. 실패하면 Exception이 발생합니다.

이 메서드는 기기 소유자나 프로필 소유자만 호출할 수 있습니다. Android 10 이하에서는 기기 소유자와 프로필 소유자가 모두 있는 기기에서는 이 작업을 호출하면 안 됩니다.

Wi-Fi 네트워크가 구성된 경우 개인 소유 기기에서 프로필 소유자가 DpcMigrationRequest로 구성된 Wi-Fi 네트워크를 전달해야 합니다 (Android 12는 제외). 회사 소유 기기로 전달해서는 안 됩니다. 이러한 Wi-Fi 네트워크는 기기 관리가 Android Device Policy로 이전되기 직전에 삭제됩니다. 네트워크를 삭제하지 못하는 경우 이전도 실패하며 네트워크 삭제는 원자성 작업이 아니므로 일부 네트워크가 이미 삭제되었을 수 있습니다.

Android 12를 실행하는 직장 프로필이 있는 개인 소유 기기에서는 migrationRequest에서 전달된 Wi-Fi 네트워크와 관계없이 호출 DPC로 구성된 모든 Wi-Fi 네트워크가 기기 관리가 Android Device Policy로 이전되기 직전에 삭제됩니다.

매개변수
@NonNull ComponentName notificationServiceComponentName

NotificationReceiverService를 확장하는 서비스의 ComponentName입니다. 호출하는 앱에 속하는 유효한 구성요소여야 하며 매니페스트에서 내보내야 합니다. 그렇지 않으면 IllegalArgumentException이 발생합니다.

@NonNull ComponentName adminComponentName

호출 DPC 관리자 DeviceAdminReceiverComponentName.

@NonNull DpcMigrationRequest migrationRequest

이전 토큰 및 구성된 Wi-Fi 네트워크가 포함된 DpcMigrationRequest입니다. 후자는 호출자가 개인 소유 기기의 프로필 소유자이고 네트워크를 구성한 경우에만 필요합니다.

반환 값
@NonNull DpcMigrationAttempt

DpcMigrationException를 성공한 경우 마이그레이션의 현재 상태로 바꿉니다.

생성 값
java.lang.SecurityException

발신자가 기기 소유자 또는 프로필 소유자가 아닌 경우

java.lang.IllegalArgumentException

이전 토큰이 비어 있거나 notificationServiceComponentName가 매니페스트에서 내보낸 NotificationReceiverService를 확장하는 유효한 구성요소를 참조하지 않거나 adminComponentName가 현재 패키지에 속한 활성 관리자가 아닌 경우

com.google.android.managementapi.dpcmigration.DpcMigrationException

DPC 이전 관련 호출이 실패한 경우 메시지와 예외의 하위유형에는 실패에 대한 세부정보가 포함됩니다.