EnvironmentClient

interface EnvironmentClient


Client per accedere alle API correlate all'ambiente.

Utilizza EnvironmentClientFactory per creare un'istanza.

Riepilogo

Funzioni pubbliche

suspend Environment

Restituisce Environment.

ListenableFuture<Environment>

Restituisce Environment.

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

Prepara il dispositivo assicurandosi che l'app Android Device Policy sia installata e pronta.

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

Prepara il dispositivo assicurandosi che l'app Android Device Policy sia installata e pronta.

Funzioni pubbliche

getEnvironment

suspend fun getEnvironment(request: GetEnvironmentRequest): Environment

Restituisce Environment. Aiuta il chiamante a sapere se l'ambiente è pronto o meno.

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

Se i ruoli richiesti non sono validi.

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

Se la chiamata non è riuscita a causa di un errore interno.

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

Se il livello API dell'SDK del dispositivo non è sufficiente per determinati ruoli richiesti (oltre a un requisito generale del livello API minimo per la chiamata stessa). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} richiede il livello API 23 o superiore. Tutti gli altri ruoli richiedono il livello API 28 o versioni successive.

getEnvironmentAsync

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

Restituisce Environment. Aiuta il chiamante a sapere se l'ambiente è pronto o meno.

Resi
ListenableFuture<Environment>

Un ListenableFuture che racchiude il risultato. Le opzioni possibili sono:

  • Un futuro riuscito che racchiude un Environment, in caso di successo.

  • Un futuro non riuscito che racchiude un InvalidArgumentException, se i ruoli richiesti non sono validi.

  • Un futuro non riuscito che racchiude un InternalException, se la chiamata non è riuscita a causa di un errore interno.

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

Se il livello API dell'SDK del dispositivo non è sufficiente per determinati ruoli richiesti (oltre a un requisito generale del livello API minimo per la chiamata stessa). {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} richiede il livello API 23 o superiore. Tutti gli altri ruoli richiedono il livello API 28 o versioni successive.

prepareEnvironment

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

Prepara il dispositivo assicurandosi che l'app Android Device Policy sia installata e pronta.

Il comportamento dipende dal contesto:

  • Flusso di attendibilità del dispositivo:se l'app Android Device Policy non è installata, chiede all'utente di installarla. Se l'app è già installata, viene aggiornata automaticamente.

  • Flusso di registrazione del dispositivo:installa automaticamente l'app Android Device Policy se non è già installata e si assicura che sia pronta all'uso, senza interazione da parte dell'utente.

Parametri
notificationServiceComponentName: ComponentName?

Il ComponentName del servizio che estende NotificationReceiverService. Se fornito, deve essere un componente valido appartenente all'app di chiamata ed esportato nel manifest. Per ricevere notifiche relative agli eventi di preparazione dell'ambiente, devi:

  1. Implementa l'interfaccia EnvironmentListener nella tua app.

  2. Fornisci un'implementazione per la gestione degli eventi ricevuti.

  3. Estendi NotificationReceiverService e fornisci un'istanza EnvironmentListener.

  4. Aggiungi la classe NotificationReceiverService estesa al file AndroidManifest.xml e assicurati che venga esportata.

Ad esempio:

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

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

PrepareEnvironmentResponse contenente i dettagli sullo stato finale della preparazione dell'ambiente.

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

Se:

  • [notificationServiceComponentName] non è un componente valido appartenente all'app chiamante o non esportato nel manifest.
  • I ruoli richiesti includono {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} e {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} non è fornito o non estende {@code android.app.admin.DeviceAdminReceiver}.
  • I ruoli richiesti non sono validi.
java.lang.SecurityException

Se il chiamante non è autorizzato a chiamare questa API.

com.google.android.managementapi.environment.GooglePlayServicesAppNotUpdatedException

Se Google Play Services non è aggiornato.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateUnrecoverableException

Se l'installazione o l'aggiornamento di Android Device Policy non va a buon fine e l'errore è irrecuperabile.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallOrUpdateRecoverableException

Se l'app Android Device Policy non viene installata o aggiornata e l'errore è recuperabile (ad es. la richiesta non è riuscita a causa di problemi di rete temporanei), la richiesta può essere ritentata.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDeclinedException

Se l'utente rifiuta di installare l'app Android Device Policy.

com.google.android.managementapi.environment.AndroidDevicePolicyInstallConsentDismissedException

Se l'utente ignora la schermata per il consenso dell'installazione.

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

Se la chiamata non è riuscita a causa di un errore interno.

com.google.android.managementapi.environment.PlayStoreUpdateUnrecoverableException

Se l'aggiornamento del Play Store non è riuscito.

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

Se il livello API dell'SDK del dispositivo non è sufficiente per determinati ruoli richiesti (questo potrebbe aggiungersi a un requisito generale del livello API minimo per la chiamata stessa).{@code Role.RoleType.DEVICE_POLICY_CONTROLLER} richiede il livello API 23 o versioni successive. Tutti gli altri ruoli richiedono il livello API 28 o versioni successive.

prepareEnvironmentAsync

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

Prepara il dispositivo assicurandosi che l'app Android Device Policy sia installata e pronta.

Il comportamento dipende dal contesto:

  • Flusso di attendibilità del dispositivo:se l'app Android Device Policy non è installata, chiede all'utente di installarla. Se l'app è già installata, viene aggiornata automaticamente.

  • Flusso di registrazione del dispositivo:installa automaticamente l'app Android Device Policy se non è già installata e si assicura che sia pronta all'uso, senza interazione da parte dell'utente.

Parametri
notificationServiceComponentName: ComponentName?

Il ComponentName del servizio che estende NotificationReceiverService. Se fornito, deve essere un componente valido appartenente all'app di chiamata ed esportato nel manifest. Per ricevere notifiche sugli eventi di preparazione dell'ambiente, devi:

  1. Implementa l'interfaccia EnvironmentListener nella tua app.

  2. Fornisci un'implementazione per la gestione degli eventi ricevuti.

  3. Estendi NotificationReceiverService e fornisci un'istanza EnvironmentListener.

  4. Aggiungi la classe NotificationReceiverService estesa al file AndroidManifest.xml e assicurati che venga esportata.

Ad esempio:

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

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

Un ListenableFuture che racchiude il risultato. Può essere

  • Un futuro riuscito che racchiude un PrepareEnvironmentResponse contenente i dettagli sullo stato finale della preparazione dell'ambiente.

  • Un futuro non riuscito che racchiude un InvalidArgumentException se:

    • [notificationServiceComponentName] non è un componente valido appartenente all'app chiamante o non è stato esportato nel manifest.
    • I ruoli richiesti non sono validi.
    • I ruoli richiesti includono {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} e {@code com.google.android.managementapi.environment.model.PrepareEnvironmentRequest.admin} non è fornito o non estende {@code android.app.admin.DeviceAdminReceiver}.
  • Un futuro non riuscito che racchiude un SecurityException, se il chiamante non è autorizzato a chiamare questa API.

  • Un futuro non riuscito che racchiude un GooglePlayServicesAppNotUpdatedException se Google Play Services non è aggiornato.

  • Un futuro non riuscito che racchiude un AndroidDevicePolicyInstallOrUpdateUnrecoverableException se l'installazione o l'aggiornamento di Android Device Policy non va a buon fine e l'errore è irrecuperabile.

  • Un futuro non riuscito che racchiude un AndroidDevicePolicyInstallOrUpdateRecoverableException se l'app Android Device Policy non viene installata o aggiornata e l'errore è recuperabile (ad es. la richiesta non è riuscita a causa di problemi di rete temporanei), in modo che la richiesta possa essere ritentata.

  • Un futuro non riuscito che racchiude un AndroidDevicePolicyInstallConsentDeclinedException se l'utente rifiuta di installare l'app Android Device Policy.

  • Un futuro non riuscito che racchiude un AndroidDevicePolicyInstallConsentDismissedException se l'utente chiude la schermata di consenso all'installazione.

  • Un futuro non riuscito che racchiude un InternalException, se la chiamata non è riuscita a causa di un errore interno.

  • Un futuro non riuscito che racchiude un PlayStoreUpdateUnrecoverableException se l'aggiornamento del Play Store non è riuscito.

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

Se il livello API SDK del dispositivo non è sufficiente per determinati ruoli richiesti. {@code Role.RoleType.DEVICE_POLICY_CONTROLLER} richiede il livello API 23 o superiore. Tutti gli altri ruoli richiedono il livello API 28 o versioni successive.