EnvironmentClient

interface EnvironmentClient


کلاینت برای دسترسی به apis مربوط به محیط.

برای ایجاد یک نمونه از EnvironmentClientFactory استفاده کنید.

خلاصه

توابع عمومی

suspend Environment

Environment را برمی گرداند.

ListenableFuture < Environment >

Environment را برمی گرداند.

suspend PrepareEnvironmentResponse
prepareEnvironment (
request: PrepareEnvironmentRequest ,
notificationServiceComponentName: ComponentName ?
)

محیط دستگاه را آماده می کند.

ListenableFuture < PrepareEnvironmentResponse >
prepareEnvironmentAsync (
request: PrepareEnvironmentRequest ,
notificationServiceComponentName: ComponentName ?
)

محیط دستگاه را آماده می کند.

توابع عمومی

getEnvironment

suspend fun getEnvironment(request: GetEnvironmentRequest): Environment

Environment را برمی گرداند. این به تماس گیرنده کمک می کند تا بداند آیا محیط آماده است یا نه.

پرتاب می کند
com.google.android.managementapi.common.exceptions.InvalidArgumentException

اگر نقش های درخواستی معتبر نیستند.

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

اگر تماس به دلیل خطای داخلی انجام نشد.

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

اگر سطح API SDK دستگاه برای برخی نقش‌های درخواستی کافی نباشد (این ممکن است علاوه بر حداقل نیاز سطح API عمومی برای خود تماس باشد). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} به سطح API 23 یا بالاتر نیاز دارد. هر نقش دیگری به سطح API 28 یا بالاتر نیاز دارد.

getEnvironmentAsync

fun getEnvironmentAsync(request: GetEnvironmentRequest): ListenableFuture<Environment>

Environment را برمی گرداند. این به تماس گیرنده کمک می کند تا بداند آیا محیط آماده است یا نه.

برمی گرداند
ListenableFuture < Environment >

ListenableFuture که نتیجه را می پیچد. این می تواند باشد:

  • آینده ای موفق که در صورت موفقیت یک Environment را در بر می گیرد.

  • بسته بندی آینده ناموفق الف

  • بسته بندی ناموفق آینده یک InvalidArgumentException ، اگر نقش های درخواستی معتبر نباشند.

  • در آینده ناموفق بسته بندی یک InternalException ، اگر تماس به دلیل یک خطای داخلی انجام نشد.

پرتاب می کند
com.google.android.managementapi.common.exceptions.ApiLevelException

اگر سطح API SDK دستگاه برای برخی نقش‌های درخواستی کافی نباشد (این ممکن است علاوه بر حداقل نیاز سطح API عمومی برای خود تماس باشد). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} به سطح API 23 یا بالاتر نیاز دارد. هر نقش دیگری به سطح API 28 یا بالاتر نیاز دارد.

محیط زیست را آماده کنید

suspend fun prepareEnvironment(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
): PrepareEnvironmentResponse

محیط دستگاه را آماده می کند.

از کاربر می خواهد برنامه Android Device Policy لازم را نصب کند. اگر کاربر درخواست را بپذیرد، نصب را ادامه می‌دهد. پس از نصب موفقیت آمیز، عملیاتی را انجام می دهد تا مطمئن شود که برنامه Android Device Policy آماده است.

پارامترها
notificationServiceComponentName: ComponentName ?

ComponentName سرویسی که NotificationReceiverService را گسترش می دهد. در صورت ارائه، باید یک مؤلفه معتبر متعلق به برنامه تماس‌گیرنده باشد و در مانیفست صادر شود. برای اطلاع از رویدادهای آماده سازی محیطی، باید:

  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] یک مؤلفه معتبر متعلق به برنامه تماس‌گیرنده نیست یا در مانیفست صادر نشده است.
  • نقش‌های درخواستی شامل {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} و {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} ارائه نشده است یا {@code android.Advicei}.Admin.Request.
  • نقش های درخواستی معتبر نیستند.
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 Device Policy نصب یا به روز نشود و خطا قابل بازیابی باشد (مثلاً درخواست به دلیل مشکلات شبکه گذرا انجام نشد)، بنابراین می توان درخواست را دوباره امتحان کرد.

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallConsentDeclinedException اگر کاربر نصب برنامه Android Device Policy را نپذیرفت.

com.google.android.managementapi.environment.exception.AndroidDevicePolicyInstallConsentDismissedException اگر کاربر صفحه رضایت نصب را رد کند.

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

اگر تماس به دلیل خطای داخلی انجام نشد.

com.google.android.managementapi.environment.exception.PlayStoreUpdateUnrecoverableException اگر به‌روزرسانی فروشگاه Play انجام نشد.

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

اگر سطح API SDK دستگاه برای برخی نقش‌های درخواستی کافی نباشد (این ممکن است علاوه بر حداقل نیاز سطح API عمومی برای خود تماس باشد).{@code Role.RoleType.DEVICE_POLICY_CONTROLLER} به سطح API 23 یا بالاتر نیاز دارد. هر نقش دیگری به سطح API 28 یا بالاتر نیاز دارد.

آماده EnvironmentAsync

fun prepareEnvironmentAsync(
    request: PrepareEnvironmentRequest,
    notificationServiceComponentName: ComponentName?
): ListenableFuture<PrepareEnvironmentResponse>

محیط دستگاه را آماده می کند.

از کاربر می خواهد برنامه Android Device Policy لازم را نصب کند. اگر کاربر درخواست را بپذیرد، نصب را ادامه می‌دهد. پس از نصب موفقیت آمیز، عملیاتی را انجام می دهد تا مطمئن شود که برنامه Android Device Policy آماده است.

پارامترها
notificationServiceComponentName: ComponentName ?

ComponentName سرویسی که NotificationReceiverService را گسترش می دهد. در صورت ارائه، باید یک مؤلفه معتبر متعلق به برنامه تماس‌گیرنده باشد و در مانیفست صادر شود. برای اطلاع از رویدادهای آماده سازی محیط، باید:

  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 حاوی جزئیاتی در مورد وضعیت نهایی آماده سازی محیط است.

  • آینده ناموفق بسته بندی یک InvalidArgumentException اگر:

    • [notificationServiceComponentName] یک مؤلفه معتبر متعلق به برنامه تماس‌گیرنده نیست یا در مانیفست صادر نشده است.
    • نقش های درخواستی معتبر نیستند.
  • نقش‌های درخواستی شامل {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} و {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} ارائه نشده است یا {@code android.Advicei}.Admin.Request.
  • بسته بندی آینده ناموفق الف

  • اگر تماس‌گیرنده مجاز به فراخوانی این API نباشد، در آینده ناموفق بسته‌بندی یک SecurityException .

  • در صورتی که سرویس‌های Google Play به‌روز نباشد، در آینده ناموفق بسته‌بندی GooglePlayServicesAppNotUpdatedException .

  • بسته بندی ناموفق آینده یک AndroidDevicePolicyInstallOrUpdateUnrecoverableException در صورتی که خط مشی دستگاه Android نصب یا به روز نشود و خطا غیرقابل بازیابی باشد.

  • بسته بندی ناموفق در آینده یک AndroidDevicePolicyInstallOrUpdateRecoverableException در صورتی که برنامه Android Device Policy نصب یا به روز رسانی نشود و خطا قابل بازیابی باشد (مثلاً درخواست به دلیل مشکلات شبکه گذرا انجام نشد)، بنابراین می توان درخواست را دوباره امتحان کرد.

  • اگر کاربر از نصب برنامه Android Device Policy خودداری کند، بسته بندی ناموفق در آینده یک AndroidDevicePolicyInstallConsentDeclinedException .

  • در صورتی که کاربر صفحه رضایت نصب را رد کند، بسته بندی ناموفق در آینده یک AndroidDevicePolicyInstallConsentDismissedException .

  • در آینده ناموفق بسته بندی یک InternalException ، اگر تماس به دلیل یک خطای داخلی انجام نشد.

  • در صورتی که به‌روزرسانی فروشگاه Play ناموفق باشد، یک PlayStoreUpdateUnrecoverableException را بسته‌بندی نمی‌کند.

  • پرتاب می کند
    com.google.android.managementapi.common.exceptions.ApiLevelException

    اگر سطح API SDK دستگاه برای برخی نقش‌های درخواستی کافی نیست. {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} به سطح API 23 یا بالاتر نیاز دارد. هر نقش دیگری به سطح API 28 یا بالاتر نیاز دارد.