DpcMigrationClient

interface DpcMigrationClient


Ứng dụng khách đưa ra yêu cầu liên quan đến việc di chuyển dpc.

Tóm tắt

Hàm công khai

ListenableFuture<DpcMigrationAttempt?>
getMigrationAttempt(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
)

Tìm cách di chuyển.

suspend DpcMigrationAttempt?
getMigrationAttemptAwait(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
)

Tìm cách di chuyển.

ListenableFuture<List<DpcMigrationAttempt>>

Trả về danh sách tất cả các lần thử di chuyển.

suspend List<DpcMigrationAttempt>

Trả về danh sách tất cả các lần thử di chuyển.

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

Chuyển thiết bị này sang trạng thái được quản lý bằng Android Management API.

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

Chuyển thiết bị này sang trạng thái được quản lý bằng Android Management API.

Hàm công khai

getMigrationAttempt

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

Tìm cách di chuyển.

Nếu không có tên nào được chỉ định trong GetDpcMigrationAttemptRequest, thì DpcMigrationAttempt gần đây nhất sẽ được trả về.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ, hoặc Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API mới có thể gọi phương thức này.

Giá trị trả về
ListenableFuture<DpcMigrationAttempt?>

ListenableFuture gói kết quả. Thông tin này có thể

  • Một tương lai thành công sẽ gói DpcMigrationAttempt, trong trường hợp thành công.

  • Một tương lai thành công gói giá trị rỗng, trong trường hợp không tìm thấy DpcMigrationAttempt.

  • Một tương lai không thành công sẽ gói SecurityException, trong trường hợp phương thức gọi không phải là Chủ sở hữu thiết bị hay Chủ sở hữu hồ sơ hay Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ trước đó đã di chuyển sang Android Management API.

  • Một tương lai không thành công gói DpcMigrationException Nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.

getMigrationAttemptAwait

suspend fun getMigrationAttemptAwait(
    getMigrationAttemptRequest: GetDpcMigrationAttemptRequest
): DpcMigrationAttempt?

Tìm cách di chuyển.

Nếu không có tên nào được chỉ định trong GetDpcMigrationAttemptRequest, thì DpcMigrationAttempt gần đây nhất sẽ được trả về.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ, hoặc Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API mới có thể gọi phương thức này.

Giá trị trả về
DpcMigrationAttempt?

DpcMigrationAttempt được yêu cầu hoặc giá trị rỗng nếu không tìm thấy

Gửi
java.lang.SecurityException

Nếu phương thức gọi không phải là Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ, hoặc không phải là Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.

listMigrationAttempts

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

Trả về danh sách tất cả các lần thử di chuyển.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ, hoặc Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API mới có thể gọi phương thức này. Lưu ý: các lần di chuyển trước đó sẽ tự động bị xoá và không được trả về.

Giá trị trả về
ListenableFuture<List<DpcMigrationAttempt>>

ListenableFuture gói kết quả. Thông tin này có thể

  • Một tương lai thành công gói danh sách DpcMigrationAttempt, nếu thành công.

  • Một tương lai không thành công sẽ gói SecurityException, trong trường hợp phương thức gọi không phải là Chủ sở hữu thiết bị hay Chủ sở hữu hồ sơ hay Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ trước đó đã di chuyển sang Android Management API.

  • Một tương lai không thành công gói DpcMigrationException Nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.

listMigrationAttemptsAwait

suspend fun listMigrationAttemptsAwait(): List<DpcMigrationAttempt>

Trả về danh sách tất cả các lần thử di chuyển.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ, hoặc Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API mới có thể gọi phương thức này. Lưu ý: các lần di chuyển trước đó sẽ tự động bị xoá và không được trả về.

Giá trị trả về
List<DpcMigrationAttempt>

Danh sách DpcMigrationAttempt

Gửi
java.lang.SecurityException

Nếu phương thức gọi không phải là Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ, hoặc không phải là Chủ sở hữu thiết bị/Chủ sở hữu hồ sơ trước đây đã chuyển sang Android Management API.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.

migrateDeviceManagementToAndroidManagementApi

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

Chuyển thiết bị này sang trạng thái được quản lý bằng Android Management API.

Sau khi quá trình di chuyển hoàn tất, ứng dụng gọi sẽ mất các đặc quyền của Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ vì những đặc quyền này được chuyển sang Android Device Policy.

Cảnh báo: Bạn không thể huỷ thao tác này! ListenableFuture được trả về sẽ hoàn tất khi Android Device Policy nhận được yêu cầu và hoàn tất bước kiểm tra sơ bộ đối với mã thông báo di chuyển. Trong trường hợp không thành công, ListenableFuture sẽ gói một Exception.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ mới có thể gọi phương thức này. Trên Android 10 trở xuống, bạn không được gọi lệnh này trên thiết bị có cả Chủ sở hữu thiết bị và Chủ sở hữu hồ sơ.

Chủ sở hữu hồ sơ (ngoại trừ trên Android 12) cần chuyển mạng Wi-Fi đã định cấu hình vào DpcMigrationRequest trên thiết bị thuộc sở hữu của cá nhân nếu đã định cấu hình mạng Wi-Fi bất kỳ. Bạn không được truyền những dữ liệu này trên thiết bị thuộc sở hữu của công ty. Xin lưu ý rằng các mạng Wi-Fi này sẽ bị xoá ngay trước khi chế độ quản lý thiết bị di chuyển sang Android Device Policy. Trong trường hợp không xoá được một mạng, quá trình di chuyển cũng sẽ không thành công. Vì việc xoá mạng không phải là một hoạt động nguyên tử, nên một số mạng có thể đã bị xoá.

Trên các thiết bị thuộc sở hữu cá nhân có hồ sơ công việc chạy Android 12, tất cả mạng Wi-Fi do DPC gọi định cấu hình sẽ bị xoá ngay trước khi chế độ quản lý thiết bị được di chuyển sang Android Device Policy, bất kể mạng Wi-Fi nào được chuyển vào migrationRequest.

Tham số
notificationServiceComponentName: ComponentName

ComponentName của dịch vụ mở rộng NotificationReceiverService. Đó phải là một thành phần hợp lệ thuộc về ứng dụng gọi và được xuất trong tệp kê khai, nếu không thì IllegalArgumentException sẽ được gửi.

adminComponentName: ComponentName

ComponentName của quản trị viên DeviceAdminReceiver của DPC gọi.

migrationRequest: DpcMigrationRequest

DpcMigrationRequest chứa mã di chuyển và các mạng Wi-Fi đã định cấu hình. Yêu cầu thứ hai chỉ được yêu cầu nếu phương thức gọi là Chủ sở hữu hồ sơ trên thiết bị thuộc sở hữu cá nhân và đã định cấu hình bất kỳ mạng nào.

Giá trị trả về
ListenableFuture<DpcMigrationAttempt>

ListenableFuture gói kết quả. Thông tin này có thể

  • Một tương lai thành công sẽ gói DpcMigrationAttempt, trong trường hợp thành công.

  • Một tương lai không thành công sẽ gói SecurityException, nếu phương thức gọi không phải là Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ.

  • Một tương lai không thành công sẽ gói IllegalArgumentException, nếu mã di chuyển trống hoặc nếu notificationServiceComponentName không tham chiếu đến một thành phần hợp lệ mở rộng NotificationReceiverService được xuất trong tệp kê khai, hoặc nếu adminComponentName không phải là quản trị viên đang hoạt động thuộc gói hiện tại.

  • Một tương lai không thành công sẽ gói DpcMigrationException nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.

migrateDeviceManagementToAndroidManagementApiAwait

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

Chuyển thiết bị này sang trạng thái được quản lý bằng Android Management API.

Sau khi quá trình di chuyển hoàn tất, ứng dụng gọi sẽ mất các đặc quyền của Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ vì những đặc quyền này được chuyển sang Android Device Policy.

Cảnh báo: Bạn không thể huỷ thao tác này! Thao tác tạm ngưng này sẽ quay trở lại khi Android Device Policy nhận được yêu cầu và hoàn tất bước kiểm tra sơ bộ đối với mã thông báo di chuyển. Trong trường hợp không thành công, hệ thống sẽ gửi Exception.

Chỉ Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ mới có thể gọi phương thức này. Trên Android 10 trở xuống, bạn không được gọi lệnh này trên thiết bị có cả Chủ sở hữu thiết bị và Chủ sở hữu hồ sơ.

Chủ sở hữu hồ sơ (ngoại trừ trên Android 12) cần chuyển mạng Wi-Fi đã định cấu hình vào DpcMigrationRequest trên thiết bị thuộc sở hữu của cá nhân nếu đã định cấu hình mạng Wi-Fi bất kỳ. Bạn không được truyền những dữ liệu này trên thiết bị thuộc sở hữu của công ty. Xin lưu ý rằng các mạng Wi-Fi này sẽ bị xoá ngay trước khi chế độ quản lý thiết bị di chuyển sang Android Device Policy. Trong trường hợp không xoá được một mạng, quá trình di chuyển cũng sẽ không thành công. Vì việc xoá mạng không phải là một hoạt động nguyên tử, nên một số mạng có thể đã bị xoá.

Trên các thiết bị thuộc sở hữu cá nhân có hồ sơ công việc chạy Android 12, tất cả mạng Wi-Fi do DPC gọi định cấu hình sẽ bị xoá ngay trước khi chế độ quản lý thiết bị được di chuyển sang Android Device Policy, bất kể mạng Wi-Fi nào được chuyển vào migrationRequest.

Tham số
notificationServiceComponentName: ComponentName

ComponentName của dịch vụ mở rộng NotificationReceiverService. Đó phải là một thành phần hợp lệ thuộc về ứng dụng gọi và được xuất trong tệp kê khai, nếu không thì IllegalArgumentException sẽ được gửi.

adminComponentName: ComponentName

ComponentName của quản trị viên DeviceAdminReceiver của DPC gọi.

migrationRequest: DpcMigrationRequest

DpcMigrationRequest chứa mã di chuyển và các mạng Wi-Fi đã định cấu hình. Yêu cầu thứ hai chỉ được yêu cầu nếu phương thức gọi là Chủ sở hữu hồ sơ trên thiết bị thuộc sở hữu cá nhân và đã định cấu hình bất kỳ mạng nào.

Giá trị trả về
DpcMigrationAttempt

DpcMigrationException với trạng thái hiện tại của quá trình di chuyển nếu thành công.

Gửi
java.lang.SecurityException

Nếu phương thức gọi không phải là Chủ sở hữu thiết bị hoặc Chủ sở hữu hồ sơ.

java.lang.IllegalArgumentException

Nếu mã di chuyển trống hoặc nếu notificationServiceComponentName không tham chiếu đến thành phần hợp lệ mở rộng NotificationReceiverService được xuất trong tệp kê khai, hoặc nếu adminComponentName không phải là quản trị viên đang hoạt động thuộc gói hiện tại.

com.google.android.managementapi.dpcmigration.DpcMigrationException

Nếu lệnh gọi liên quan đến việc di chuyển dpc không thành công. Thông báo và loại phụ của ngoại lệ sẽ có thêm thông tin chi tiết về lỗi.