DpcMigrationClient

public 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

Phương thức công khai

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

Tìm cách di chuyển.

abstract DpcMigrationAttempt
getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

Tìm cách di chuyển.

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

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

abstract @NonNull List<@NonNull DpcMigrationAttempt>

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

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

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

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

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

Phương thức công khai

getMigrationAttempt

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

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ề
@NonNull 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

abstract DpcMigrationAttempt getMigrationAttemptAwait(
    @NonNull GetDpcMigrationAttemptRequest getMigrationAttemptRequest
)

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

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

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ề
@NonNull ListenableFuture<@NonNull List<@NonNull 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

abstract @NonNull List<@NonNull DpcMigrationAttemptlistMigrationAttemptsAwait()

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ề
@NonNull List<@NonNull 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

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

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ố
@NonNull ComponentName notificationServiceComponentName

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.

@NonNull ComponentName adminComponentName

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

@NonNull DpcMigrationRequest migrationRequest

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ề
@NonNull ListenableFuture<@NonNull 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

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

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ố
@NonNull ComponentName notificationServiceComponentName

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.

@NonNull ComponentName adminComponentName

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

@NonNull DpcMigrationRequest migrationRequest

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ề
@NonNull 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.