EnvironmentClient

interface EnvironmentClient


ไคลเอ็นต์เพื่อเข้าถึง API ที่เกี่ยวข้องกับสภาพแวดล้อม

ใช้ EnvironmentClientFactory เพื่อสร้างอินสแตนซ์

สรุป

ฟังก์ชันสาธารณะ

suspend Environment

แสดงผล Environment

ListenableFuture<Environment>

แสดงผล Environment

suspend PrepareEnvironmentResponse
@RequiresApi(value = 28)
prepareEnvironment(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
)

เตรียมสภาพแวดล้อมของอุปกรณ์

ListenableFuture<PrepareEnvironmentResponse>
@RequiresApi(value = 28)
prepareEnvironmentAsync(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
)

เตรียมสภาพแวดล้อมของอุปกรณ์

ฟังก์ชันสาธารณะ

getEnvironment

@RequiresApi(value = 28)
suspend fun getEnvironment(request: GetEnvironmentRequest): Environment

แสดงผล Environment ข้อมูลนี้ช่วยให้ผู้โทรทราบว่าสภาพแวดล้อมพร้อมใช้งานหรือไม่

การโยน
java.lang.SecurityException

หากผู้โทรไม่ได้รับอนุญาตให้เรียก API นี้

com.google.android.managementapi.common.exceptions.ApiLevelException

หากระดับ API ของอุปกรณ์น้อยกว่า 28

com.google.android.managementapi.common.exceptions.InvalidArgumentException

หากบทบาทที่ขอไม่ถูกต้อง

com.google.android.managementapi.common.exceptions.InternalException

หากการโทรไม่สำเร็จเนื่องจากข้อผิดพลาดภายใน

getEnvironmentAsync

@RequiresApi(value = 28)
fun getEnvironmentAsync(request: GetEnvironmentRequest): ListenableFuture<Environment>

แสดงผล Environment ข้อมูลนี้ช่วยให้ผู้โทรทราบว่าสภาพแวดล้อมพร้อมใช้งานหรือไม่

การคืนสินค้า
ListenableFuture<Environment>

ListenableFuture ที่ปิดผลลัพธ์ ซึ่งอาจเป็น

  • การดำเนินการกับ Environment ในอนาคตที่ประสบความสําเร็จ

  • การรวม SecurityException ในอนาคตไม่สําเร็จ หากผู้เรียกไม่ได้รับอนุญาตให้เรียก API นี้

  • การรวม ApiLevelException ในอนาคตไม่สำเร็จ หากระดับ API ของอุปกรณ์น้อยกว่า 28

  • การรวม InvalidArgumentException ในอนาคตไม่สำเร็จ หากบทบาทที่ขอไม่ถูกต้อง

  • การดำเนินการแบบ Future ที่ยกเลิกการอ้างอิง InternalException ไม่สำเร็จ หากการเรียกไม่สำเร็จเนื่องจากข้อผิดพลาดภายใน

prepareEnvironment

@RequiresApi(value = 28)
suspend fun prepareEnvironment(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
): PrepareEnvironmentResponse

เตรียมสภาพแวดล้อมของอุปกรณ์

แจ้งให้ผู้ใช้ติดตั้งแอปพลิเคชัน Android Device Policy ที่จำเป็น ดำเนินการติดตั้งต่อหากผู้ใช้ยอมรับข้อความแจ้ง หลังจากติดตั้งเสร็จแล้ว ระบบจะดำเนินการเพื่อให้แน่ใจว่าแอป Android Device Policy พร้อมใช้งาน

พารามิเตอร์
notificationServiceComponentName: ComponentName?

ComponentName ของบริการที่ขยาย NotificationReceiverService หากระบุไว้ ต้องเป็นคอมโพเนนต์ที่ถูกต้องซึ่งอยู่ในการเรียกใช้แอป และส่งออกในไฟล์ Manifest หากต้องการรับการแจ้งเตือนเกี่ยวกับกิจกรรมการเตรียมสภาพแวดล้อม คุณต้องทำดังนี้

  1. ใช้อินเทอร์เฟซ EnvironmentListener ในแอป

  2. ระบุการใช้งานสําหรับวิธีจัดการเหตุการณ์ที่ได้รับ

  3. ขยาย NotificationReceiverService และระบุอินสแตนซ์ EnvironmentListener

  4. เพิ่มคลาส NotificationReceiverService ที่ขยายลงใน AndroidManifest.xml และตรวจสอบว่าได้ส่งออกแล้ว

เช่น

class MyEnvironmentListener : EnvironmentListener {
override fun onEnvironmentEvent(event: EnvironmentEvent) {
// Handle the environment event.
}
}

class MyNotificationReceiverService : NotificationReceiverService() {
override fun getPrepareEnvironmentListener(): EnvironmentListener? {
return MyEnvironmentListener()
}
}
การคืนสินค้า
PrepareEnvironmentResponse

PrepareEnvironmentResponse ที่มีรายละเอียดเกี่ยวกับสถานะสุดท้ายของการเตรียมสภาพแวดล้อม

การโยน
com.google.android.managementapi.common.exceptions.InvalidArgumentException

หาก:

  • [notificationServiceComponentName] ไม่ใช่คอมโพเนนต์ที่ถูกต้องซึ่งเป็นของแอปที่เรียกใช้ หรือไม่ได้ส่งออกในไฟล์ Manifest
  • บทบาทที่ขอไม่ถูกต้อง
com.google.android.managementapi.common.exceptions.ApiLevelException

หากระดับ API ของอุปกรณ์น้อยกว่า 28

java.lang.SecurityException

หากผู้โทรไม่ได้รับอนุญาตให้เรียก API นี้

com.google.android.managementapi.environment.exception.GooglePlayServicesAppNotUpdatedException หากบริการ Google Play ไม่ใช่เวอร์ชันล่าสุด

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallOrUpdateUnrecoverableException หากนโยบายอุปกรณ์ Android ติดตั้งหรืออัปเดตไม่สำเร็จและข้อผิดพลาดไม่สามารถกู้คืนได้

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallOrUpdateRecoverableException หากแอปนโยบายอุปกรณ์ Android ติดตั้งหรืออัปเดตไม่สำเร็จและข้อผิดพลาดแก้ไขได้ (เช่น คำขอไม่สำเร็จเนื่องจากปัญหาเครือข่ายชั่วคราว) ระบบจะพยายามส่งคำขออีกครั้ง

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallConsentDeclinedException กรณีที่ผู้ใช้ปฏิเสธที่จะติดตั้งแอป Android Device Policy

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallConsentDismissedException หากผู้ใช้ปิดหน้าจอขอความยินยอมในการติดตั้ง

com.google.android.managementapi.common.exceptions.InternalException

หากการโทรไม่สำเร็จเนื่องจากข้อผิดพลาดภายใน

prepareEnvironmentAsync

@RequiresApi(value = 28)
fun prepareEnvironmentAsync(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
): ListenableFuture<PrepareEnvironmentResponse>

เตรียมสภาพแวดล้อมของอุปกรณ์

แจ้งให้ผู้ใช้ติดตั้งแอปพลิเคชัน Android Device Policy ที่จำเป็น ดำเนินการติดตั้งต่อหากผู้ใช้ยอมรับข้อความแจ้ง หลังจากติดตั้งเสร็จแล้ว ระบบจะดำเนินการเพื่อให้แน่ใจว่าแอป Android Device Policy พร้อมใช้งาน

พารามิเตอร์
notificationServiceComponentName: ComponentName?

ComponentName ของบริการที่ขยาย NotificationReceiverService หากระบุไว้ ต้องเป็นคอมโพเนนต์ที่ถูกต้องซึ่งอยู่ในแอปที่เรียกใช้ และส่งออกในไฟล์ Manifest หากต้องการรับการแจ้งเตือนเกี่ยวกับเหตุการณ์การเตรียมสภาพแวดล้อม คุณต้องทำดังนี้

  1. ใช้อินเทอร์เฟซ EnvironmentListener ในแอป

  2. ระบุการใช้งานสําหรับวิธีจัดการเหตุการณ์ที่ได้รับ

  3. ขยาย NotificationReceiverService และระบุอินสแตนซ์ EnvironmentListener

  4. เพิ่มคลาส NotificationReceiverService ที่ขยายลงใน AndroidManifest.xml และตรวจสอบว่าได้ส่งออกแล้ว

เช่น

class MyEnvironmentListener : EnvironmentListener {
override fun onEnvironmentEvent(event: EnvironmentEvent) {
// Handle the environment event.
}
}

class MyNotificationReceiverService : NotificationReceiverService() {
override fun getPrepareEnvironmentListener(): EnvironmentListener? {
return MyEnvironmentListener()
}
}
การคืนสินค้า
ListenableFuture<PrepareEnvironmentResponse>

ListenableFuture ที่ปิดผลลัพธ์ ซึ่งอาจเป็น

  • การรวม PrepareEnvironmentResponse ที่ประสบความสําเร็จในอนาคตซึ่งมีรายละเอียดเกี่ยวกับสถานะสุดท้ายของการเตรียมสภาพแวดล้อม

  • เงื่อนไข "if" ของ InvalidArgumentException ที่ใช้ Future ที่ไม่สําเร็จ

    • [notificationServiceComponentName] ไม่ใช่คอมโพเนนต์ที่ถูกต้องของแอปที่เรียกใช้ หรือไม่ได้ส่งออกในไฟล์ Manifest
    • บทบาทที่ขอไม่ถูกต้อง
  • การรวม ApiLevelException ในอนาคตไม่สำเร็จหากระดับ API ของอุปกรณ์น้อยกว่า 28

  • การรวม SecurityException ในอนาคตไม่สําเร็จ หากผู้เรียกไม่ได้รับอนุญาตให้เรียก API นี้

  • การรวม GooglePlayServicesAppNotUpdatedException ในอนาคตไม่สำเร็จหากบริการ Google Play ไม่ใช่เวอร์ชันล่าสุด

  • การรวม AndroidDevicePolicyInstallOrUpdateUnrecoverableException ในอนาคตที่ไม่สําเร็จหากนโยบายอุปกรณ์ Android ติดตั้งหรืออัปเดตไม่สําเร็จและข้อผิดพลาดไม่สามารถกู้คืนได้

  • การรวม AndroidDevicePolicyInstallOrUpdateRecoverableException ในอนาคตที่ไม่สําเร็จหากแอปนโยบายอุปกรณ์ Android ติดตั้งหรืออัปเดตไม่สําเร็จและข้อผิดพลาดนั้นแก้ไขได้ (เช่น คำขอไม่สำเร็จเนื่องจากปัญหาเครือข่ายชั่วคราว) เพื่อให้ระบบลองส่งคำขออีกครั้งได้

  • การรวม AndroidDevicePolicyInstallConsentDeclinedException ในอนาคตไม่สำเร็จหากผู้ใช้ปฏิเสธที่จะติดตั้งแอป Android Device Policy

  • การรวม AndroidDevicePolicyInstallConsentDismissedException ในอนาคตไม่สําเร็จหากผู้ใช้ปิดหน้าจอขอความยินยอมในการติดตั้ง

  • การดำเนินการแบบ Future ที่ยกเลิกการอ้างอิง InternalException ไม่สำเร็จ หากการเรียกไม่สำเร็จเนื่องจากข้อผิดพลาดภายใน