EnvironmentClient

interface EnvironmentClient


عميل للوصول إلى واجهات برمجة التطبيقات ذات الصلة بالبيئة

استخدِم 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

إذا لم يكن المتصل مفوَّضًا للاتصال بواجهة برمجة التطبيقات هذه.

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

إذا كان مستوى واجهة برمجة التطبيقات للجهاز أقل من 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، إذا لم يكن المُتصل مفوَّضًا للاتصال بهذه الواجهة

  • تعذّر إجراء عملية التفاف مستقبلية لعنصر ApiLevelException، إذا كان مستوى واجهة برمجة التطبيقات للجهاز أقل من 28.

  • تعذّر إجراء عملية لفّ مستقبلية لـ InvalidArgumentException، إذا كانت الأدوار المطلوبة غير صالحة.

  • مستقبل تعذّر تنفيذه يغلِّف InternalException، إذا تعذّر الاتصال بسبب خطأ داخلي.

prepareEnvironment

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

تحضير بيئة الجهاز

يطلب من المستخدم تثبيت تطبيق 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] ليس مكوّنًا صالحًا ينتمي إلى التطبيق المُطلِب أو لم يتم تصديره في البيان.
  • الأدوار المطلوبة غير صالحة.
com.google.android.managementapi.common.exceptions.ApiLevelException

إذا كان مستوى واجهة برمجة التطبيقات للجهاز أقل من 28

java.lang.SecurityException

إذا لم يكن المتصل مفوَّضًا للاتصال بواجهة برمجة التطبيقات هذه.

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".

المعلمات
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] ليس مكوّنًا صالحًا ينتمي إلى التطبيق المُتصل أو لم يتم تصديره في البيان.
    • الأدوار المطلوبة غير صالحة.
  • تعذُّر إجراء عملية التفاف مستقبلية في ApiLevelException إذا كان مستوى واجهة برمجة التطبيقات للجهاز أقل من 28

  • مستقبل تعذّر تنفيذه يغلِّف SecurityException، إذا لم يكن المُتصل مفوَّضًا للاتصال بهذه الواجهة

  • تعذّر إجراء عملية التفاف مستقبلية في GooglePlayServicesAppNotUpdatedException إذا لم تكن "خدمات Google Play" محدّثة.

  • تشير هذه الحالة إلى تعذُّر إجراء عملية تغليف مستقبلية لـ AndroidDevicePolicyInstallOrUpdateUnrecoverableException في حال تعذُّر تثبيت سياسة جهاز Android أو تحديثها وتعذُّر استرداد الخطأ.

  • رمز مستقبلي تعذّر تغليفه برمز AndroidDevicePolicyInstallOrUpdateRecoverableException إذا تعذّر تثبيت تطبيق "سياسة جهاز Android" أو تحديثه وكان الخطأ قابلاً للاسترداد (مثلاً، تعذّر الطلب بسبب مشاكل مؤقتة في الشبكة)، وبالتالي يمكن إعادة محاولة الطلب.

  • تعذّر إكمال عملية AndroidDevicePolicyInstallConsentDeclinedException في المستقبل إذا رفض المستخدم تثبيت تطبيق Android Device Policy.

  • رمز AndroidDevicePolicyInstallConsentDismissedException في حال تعذّر إكمال عملية التفاف مستقبلية لأنّ المستخدم أغلق شاشة موافقة التثبيت

  • مستقبل تعذّر تنفيذه يغلِّف InternalException، إذا تعذّر الاتصال بسبب خطأ داخلي.