EnvironmentClient

interface EnvironmentClient


Ortamla ilgili API'lere erişmek için istemci.

Örnek oluşturmak için EnvironmentClientFactory uygulamasını kullanın.

Özet

Herkese açık işlevler

suspend Environment

Environment değerini döndürür.

ListenableFuture<Environment>

Environment değerini döndürür.

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

Cihaz ortamını hazırlar.

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

Cihaz ortamını hazırlar.

Herkese açık işlevler

getEnvironment

suspend fun getEnvironment(request: GetEnvironmentRequest): Environment

Environment değerini döndürür. Arayanın ortamın hazır olup olmadığını bilmesine yardımcı olur.

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

İstenen roller geçerli değilse.

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

Arama, dahili bir hata nedeniyle başarısız olduysa.

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

Cihazın SDK API düzeyi, istenen belirli roller için yeterli değilse (bu, çağrı için genel minimum API düzeyi şartına ek olarak geçerli olabilir). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} için API düzeyi 23 veya üstü gerekir. Diğer tüm roller için API düzeyi 28 veya üstü gerekir.

getEnvironmentAsync

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

Environment değerini döndürür. Arayanın ortamın hazır olup olmadığını bilmesine yardımcı olur.

İadeler
ListenableFuture<Environment>

Sonucu saran bir ListenableFuture. Şunlardan biri olabilir:

  • Başarı durumunda Environment ile sarmalanmış başarılı bir gelecek.

  • İstenen roller geçerli değilse InvalidArgumentException sarmalayan başarısız bir gelecek.

  • Dahili bir hata nedeniyle arama başarısız olursa InternalException sarmalayan başarısız bir gelecek.

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

Cihazın SDK API düzeyi, istenen belirli roller için yeterli değilse (bu, çağrı için genel minimum API düzeyi şartına ek olarak geçerli olabilir). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} için API düzeyi 23 veya üstü gerekir. Diğer tüm roller için API düzeyi 28 veya üstü gerekir.

prepareEnvironment

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

Cihaz ortamını hazırlar.

Kullanıcıdan gerekli Android Device Policy uygulamasını yüklemesi istenir. Kullanıcı istemi kabul ederse yükleme işlemine devam edilir. Başarılı bir yüklemenin ardından, Android Device Policy uygulamasının hazır olduğundan emin olmak için işlemler gerçekleştirir.

Parametreler
notificationServiceComponentName: ComponentName?

ComponentName hizmetinin NotificationReceiverService. Sağlanıyorsa arayan uygulamaya ait geçerli bir bileşen olmalı ve manifestte dışa aktarılmış olmalıdır. Ortam hazırlama etkinlikleriyle ilgili bildirim almak için:

  1. Uygulamanızda EnvironmentListener arayüzünü uygulayın.

  2. Alınan etkinliklerin nasıl işleneceğine dair bir uygulama sağlayın.

  3. NotificationReceiverService'i genişletin ve bir EnvironmentListener örneği sağlayın.

  4. Genişletilmiş NotificationReceiverService sınıfını AndroidManifest.xml dosyanıza ekleyin ve dışa aktarıldığından emin olun.

Örneğin:

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

class MyNotificationReceiverService : NotificationReceiverService() {
override fun getPrepareEnvironmentListener(): EnvironmentListener? {
return MyEnvironmentListener()
}
}
İadeler
PrepareEnvironmentResponse

PrepareEnvironmentResponse ortam hazırlığının son durumuyla ilgili ayrıntıları içerir.

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

Eğer:

  • [notificationServiceComponentName], çağıran uygulamaya ait geçerli bir bileşen değil veya manifestte dışa aktarılmamış.
  • İstenen roller {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} içeriyor ve {@code {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} sağlanmıyor veya {@code android.app.admin.DeviceAdminReceiver} kapsamına girmiyor.
  • İstenen roller geçerli değil.
java.lang.SecurityException

Arayan kullanıcının bu API'yi çağırma yetkisi yoksa.

com.google.android.managementapi.environment.GooglePlayServicesAppNotUpdatedException

Google Play Hizmetleri güncel değilse

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateUnrecoverableException

Android Device Policy yüklenemez veya güncellenemezse ve hata kurtarılamazsa

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateRecoverableException

Android Cihaz Politikası uygulaması yüklenemez veya güncellenemezse ve hata kurtarılabilirse (ör. istek, geçici ağ sorunları nedeniyle başarısız olduysa) istek yeniden denenebilir.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDeclinedException

Kullanıcı Android Device Policy uygulamasını yüklemeyi reddederse.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDismissedException

Kullanıcı, yükleme izni ekranını kapatırsa.

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

Arama, dahili bir hata nedeniyle başarısız olduysa.

com.google.android.managementapi.environment.PlayStoreUpdateUnrecoverableException

Play Store güncellemesi başarısız olduysa

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

Cihazın SDK API düzeyi, istenen belirli roller için yeterli değilse (bu, çağrının kendisi için genel bir minimum API düzeyi şartına ek olarak olabilir).{@code Role.RoleType.DEVICE_POLICY_CONTROLLER} için API düzeyi 23 veya üstü gerekir. Diğer tüm roller için API düzeyi 28 veya üstü gerekir.

prepareEnvironmentAsync

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

Cihaz ortamını hazırlar.

Kullanıcıdan gerekli Android Device Policy uygulamasını yüklemesi istenir. Kullanıcı istemi kabul ederse yükleme işlemine devam edilir. Başarılı bir yüklemenin ardından, Android Device Policy uygulamasının hazır olduğundan emin olmak için işlemler gerçekleştirir.

Parametreler
notificationServiceComponentName: ComponentName?

ComponentName hizmetinin NotificationReceiverService. Sağlanıyorsa arayan uygulamaya ait geçerli bir bileşen olmalı ve manifestte dışa aktarılmış olmalıdır. Ortam hazırlama etkinlikleriyle ilgili bildirim almak için:

  1. Uygulamanızda EnvironmentListener arayüzünü uygulayın.

  2. Alınan etkinliklerin nasıl işleneceğine dair bir uygulama sağlayın.

  3. NotificationReceiverService'i genişletin ve bir EnvironmentListener örneği sağlayın.

  4. Genişletilmiş NotificationReceiverService sınıfını AndroidManifest.xml dosyanıza ekleyin ve dışa aktarıldığından emin olun.

Örneğin:

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

class MyNotificationReceiverService : NotificationReceiverService() {
override fun getPrepareEnvironmentListener(): EnvironmentListener? {
return MyEnvironmentListener()
}
}
İadeler
ListenableFuture<PrepareEnvironmentResponse>

Sonucu saran bir ListenableFuture. Bu,

  • Ortam hazırlığının son durumuyla ilgili ayrıntılar içeren bir PrepareEnvironmentResponse ile başarılı bir gelecekteki sarmalama.

  • Aşağıdaki durumlarda InvalidArgumentException sarmalama işlemi başarısız olur:

    • [notificationServiceComponentName], çağıran uygulamaya ait geçerli bir bileşen değil veya manifest dosyasında dışa aktarılmamış.
    • İstenen roller geçerli değil.
    • İstenen roller {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} içeriyor ve {@code {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} sağlanmıyor veya {@code android.app.admin.DeviceAdminReceiver} kapsamına girmiyor.
  • Arayan bu API'yi çağırmaya yetkili değilse SecurityException sarmalayan başarısız bir gelecek.

  • Google Play Hizmetleri güncel değilse GooglePlayServicesAppNotUpdatedException sarmalama işlemi başarısız olur.

  • Android Cihaz Politikası yüklenemez veya güncellenemezse ve hata kurtarılamazsa AndroidDevicePolicyInstallOrUpdateUnrecoverableException sarmalayan başarısız bir gelecek.

  • Android Cihaz Politikası uygulaması yüklenemezse veya güncellenemezse ve hata kurtarılabilirse (ör.istek geçici ağ sorunları nedeniyle başarısız oldu) AndroidDevicePolicyInstallOrUpdateRecoverableException sarmalayan başarısız bir gelecek. Bu durumda istek yeniden denenebilir.

  • Kullanıcı Android Device Policy uygulamasını yüklemeyi reddederse AndroidDevicePolicyInstallConsentDeclinedException sarmalama işlemi başarısız olur.

  • Kullanıcı yükleme izni ekranını kapatırsa AndroidDevicePolicyInstallConsentDismissedException sarmalayan başarısız bir gelecek.

  • Dahili bir hata nedeniyle arama başarısız olursa InternalException sarmalayan başarısız bir gelecek.

  • Play Store güncellemesi başarısız olursa PlayStoreUpdateUnrecoverableException sarmalayan başarısız bir gelecek.

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

Cihazın SDK API düzeyi, istenen belirli roller için yeterli değilse. {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} için API düzeyi 23 veya üstü gerekir. Diğer tüm roller için API düzeyi 28 veya üstü gerekir.