EnvironmentClient

interface EnvironmentClient


Client per accedere alle API correlate all'ambiente.

Utilizza EnvironmentClientFactory per creare un'istanza.

Riepilogo

Funzioni pubbliche

suspend Environment

Restituisce il valore Environment.

ListenableFuture<Environment>

Restituisce il valore 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 il valore 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 (questo potrebbe aggiungersi a un requisito generale di 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.

getEnvironmentAsync

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

Restituisce il valore 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 (questo potrebbe aggiungersi a un requisito generale di 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.

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 chiamante 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 di 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 non è recuperabile.

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 è andata a buon fine 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 superiore. 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 chiamante 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 di 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), quindi la richiesta può 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 versioni successive. Tutti gli altri ruoli richiedono il livello API 28 o versioni successive.