EnvironmentClient

interface EnvironmentClient


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

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

خلاصه

توابع عمومی

suspend Environment

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

ListenableFuture < Environment >

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

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

با اطمینان از نصب و آماده بودن برنامه Android Device Policy، دستگاه را آماده می کند.

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

با اطمینان از نصب و آماده بودن برنامه Android Device Policy، دستگاه را آماده می کند.

توابع عمومی

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، دستگاه را آماده می کند.

رفتار بستگی به زمینه دارد:

  • Device Trust Flow : اگر برنامه Android Device Policy نصب نشده باشد، از کاربر درخواست می کند که نصب کند. اگر برنامه قبلاً نصب شده باشد، بی سر و صدا به روز می شود.

  • جریان ثبت نام در دستگاه: برنامه سیاست دستگاه Android را در صورتی که قبلاً نصب نشده باشد، بی‌صدا نصب می‌کند و مطمئن می‌شود که برای استفاده آماده است، بدون تعامل با کاربر.

پارامترها
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.GooglePlayServicesAppNotUpdatedException

اگر خدمات Google Play به روز نیست.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateUnrecoverableException

اگر Android Device Policy نصب یا به‌روزرسانی نشد و خطا قابل جبران نیست.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateRecoverableException

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

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDeclinedException

اگر کاربر از نصب برنامه Android Device Policy امتناع کرد.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDismissedException

اگر کاربر صفحه رضایت نصب را رد کند.

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

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

com.google.android.managementapi.environment.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، دستگاه را آماده می کند.

رفتار بستگی به زمینه دارد:

  • Device Trust Flow : اگر برنامه Android Device Policy نصب نشده باشد، از کاربر درخواست می کند که نصب کند. اگر برنامه قبلاً نصب شده باشد، بی سر و صدا به روز می شود.

  • جریان ثبت نام در دستگاه: برنامه سیاست دستگاه Android را در صورتی که قبلاً نصب نشده باشد، بی‌صدا نصب می‌کند و مطمئن می‌شود که برای استفاده آماده است، بدون تعامل با کاربر.

پارامترها
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 یا بالاتر نیاز دارد.