TestDevice
public
class
TestDevice
extends NativeDevice
Classi di sottoclasse dirette note
ManagedRemoteDevice |
Un dispositivo in esecuzione all'interno di una macchina virtuale che gestiamo da remoto tramite un'istanza Tradefed all'interno della VM.
|
NestedRemoteDevice |
Rappresentazione del dispositivo in esecuzione all'interno di una VM Cuttlefish remota.
|
RemoteAndroidDevice |
Implementazione di un ITestDevice per un dispositivo Android full stack connesso tramiteadb connect.
|
|
Classi di sottoclasse indirette note
|
Implementazione di un ITestDevice
per un dispositivo Android full stack
Riepilogo
Campi |
public
static
final
String |
DISMISS_KEYGUARD_CMD
Comandi che possono essere utilizzati per ignorare la schermata di blocco.
|
Metodi pubblici |
boolean
|
canSwitchToHeadlessSystemUser()
Restituisce se è consentito passare all'utente di sistema senza testa.
|
boolean
|
clearErrorDialogs()
Prova a chiudere le eventuali finestre di dialogo di errore attualmente visualizzate nell'interfaccia utente del dispositivo.
|
int
|
createUser(String name)
Crea un utente con un nome e flag predefiniti pari a 0.
|
int
|
createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)
Crea un utente con un nome e gli indicatori specificati
|
int
|
createUser(String name, boolean guest, boolean ephemeral)
Crea un utente con un nome e gli indicatori specificati
|
int
|
createUserNoThrow(String name)
Crea un utente con un nome e flag predefiniti pari a 0.
|
void
|
disableKeyguard()
Tenta di disattivare la schermata di blocco.
|
boolean
|
doesFileExist(String deviceFilePath)
Metodo di supporto per determinare se il file sul dispositivo esiste.
|
boolean
|
doesFileExist(String deviceFilePath, int userId)
Metodo di supporto per determinare se il file sul dispositivo esiste per un determinato utente.
|
File
|
dumpHeap(String process, String devicePath)
Prova a eseguire il dump dell'heap da system_server.
|
|
getActiveApexes()
Recupera le informazioni sugli APEX attivati sul dispositivo.
|
|
getAllSettings(String namespace)
Restituisce le coppie chiave-valore dello spazio dei nomi richiesto.
|
String
|
getAndroidId(int userId)
Trova e restituisce l'id Android associato a un userId, null se non trovato.
|
|
getAndroidIds()
Crea una mappa degli ID Android trovati corrispondenti agli ID utente.
|
PackageInfo
|
getAppPackageInfo(String packageName)
Recupera le informazioni su un pacchetto installato sul dispositivo.
|
|
getAppPackageInfos()
Recupera le informazioni sui pacchetti installati sul dispositivo.
|
InputStreamSource
|
getBugreport()
Recupera una segnalazione di bug dal dispositivo.
|
InputStreamSource
|
getBugreportz()
Recupera un bugreportz dal dispositivo.
|
DeviceFoldableState
|
getCurrentFoldableState()
Restituisce lo stato attuale del dispositivo pieghevole o null se si sono verificati problemi.
|
int
|
getCurrentUser()
Restituisce l'ID dell'utente corrente in esecuzione.
|
|
getFoldableStates()
Restituisce l'elenco degli stati del dispositivo pieghevole.
|
|
getInstalledPackageNames()
Recupera i nomi dei pacchetti delle applicazioni presenti sul dispositivo.
|
KeyguardControllerState
|
getKeyguardState()
Restituisce un oggetto per ottenere lo stato corrente della schermata di blocco o null se non supportato.
|
Integer
|
getMainUserId()
Restituisce l'ID utente principale.
|
|
getMainlineModuleInfo()
Visualizza le informazioni sui moduli principali installati sul dispositivo.
|
int
|
getMaxNumberOfRunningUsersSupported()
Ottieni il numero massimo di utenti supportati in esecuzione contemporaneamente.
|
int
|
getMaxNumberOfUsersSupported()
Visualizza il numero massimo di utenti supportati.
|
Integer
|
getPrimaryUserId()
Restituisce l'ID utente principale.
|
InputStreamSource
|
getScreenshot()
Acquisisce uno screenshot dal dispositivo.
|
InputStreamSource
|
getScreenshot(String format, boolean rescale)
Acquisisce uno screenshot dal dispositivo.
|
InputStreamSource
|
getScreenshot(long displayId)
Acquisisce uno screenshot dal dispositivo specificato dall'ID immagine.
|
InputStreamSource
|
getScreenshot(String format)
Acquisisce uno screenshot dal dispositivo.
|
String
|
getSetting(String namespace, String key)
Vedi getSetting(int, String, String) e eseguita sull'utente di sistema.
|
String
|
getSetting(int userId, String namespace, String key)
Restituisce il valore dell'impostazione richiesta.
|
|
getUninstallablePackageNames()
Recupera i nomi dei pacchetti di applicazioni che possono essere disinstallati.
|
int
|
getUserFlags(int userId)
Trova e restituisci gli indicatori di un determinato utente.
|
|
getUserInfos()
Recupera la mappa di useId a UserInfo sul dispositivo.
|
int
|
getUserSerialNumber(int userId)
Restituisce il numero di serie associato a userId, se trovato, -10000 in tutti gli altri casi.
|
boolean
|
hasFeature(String feature)
Controllare se una funzionalità è disponibile su un dispositivo.
|
String
|
installPackage(File packageFile, boolean reinstall, String... extraArgs)
Installa un pacchetto Android sul dispositivo.
|
String
|
installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)
Installa un pacchetto Android sul dispositivo.
|
String
|
installPackage(File packageFile, File certFile, boolean reinstall, String... extraArgs)
Installa un pacchetto Android sul dispositivo.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
Installa un pacchetto Android sul dispositivo per un determinato utente.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)
Installa un pacchetto Android sul dispositivo per un determinato utente.
|
String
|
installPackages( packageFiles, boolean reinstall, String... extraArgs)
|
String
|
installPackages( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, int userId, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
boolean
|
isAppEnumerationSupported()
Verificare se la piattaforma sul dispositivo supporta l'enumerazione delle app
|
boolean
|
isHeadlessSystemUserMode()
Restituisce se il dispositivo utilizza la modalità utente di sistema headless.
|
boolean
|
isMainUserPermanentAdmin()
Restituisce se l'utente principale è un amministratore permanente e non può essere eliminato o sottoposto a downgrade allo stato di utente senza privilegi amministrativi.
|
boolean
|
isMultiUserSupported()
Determina se il multiutente è supportato.
|
boolean
|
isPackageInstalled(String packageName)
Esegui una query sul dispositivo per un determinato nome del pacchetto per verificare se è attualmente installato o meno.
|
boolean
|
isPackageInstalled(String packageName, String userId)
Esegui una query sul dispositivo per un determinato nome del pacchetto e un determinato ID utente per verificare se è attualmente installato o meno per quell'utente.
|
boolean
|
isUserRunning(int userId)
Verifica se un determinato utente è in esecuzione.
|
boolean
|
isUserSecondary(int userId)
Restituisce se l'utente specificato è un utente secondario in base ai relativi flag.
|
boolean
|
isUserVisible(int userId)
Controlla se l'utente specificato è visibile.
|
boolean
|
isUserVisibleOnDisplay(int userId, int displayId)
Controlla se l'utente specificato è visibile nella visualizzazione specificata.
|
boolean
|
isVisibleBackgroundUsersOnDefaultDisplaySupported()
Restituisce se il dispositivo consente agli utenti di essere avviati in background in ERROR(/java.android.view.Display#DEFAULT_DISPLAY) .
|
boolean
|
isVisibleBackgroundUsersSupported()
Restituisce se il dispositivo consente agli utenti di essere avviati in background.
|
|
listDisplayIds()
Raccogliere l'elenco degli ID display disponibili sul dispositivo, come indicato da "dumpsys
SurfaceFlinger".
|
|
listDisplayIdsForStartingVisibleBackgroundUsers()
Recupera l'elenco di display che possono essere utilizzati per start a user visible in the background .
|
|
listUsers()
Recupera l'elenco degli utenti sul dispositivo.
|
boolean
|
logBugreport(String dataName, ITestLogger listener)
Metodo di supporto per acquisire una segnalazione di bug e registrarla per i reporter.
|
void
|
notifySnapuserd(SnapuserdWaitPhase waitPhase)
|
void
|
postInvocationTearDown(Throwable exception)
Passaggi aggiuntivi per la pulizia richiesta specifica del dispositivo che verranno eseguiti al termine dell'invocazione.
|
boolean
|
removeAdmin(String componentName, int userId)
Rimuovi l'amministratore del dispositivo specificato nell'utente specificato e restituisci true se l'operazione ha esito positivo, false altrimenti.
|
void
|
removeOwners()
Rimuovi tutti i proprietari di profili dei dispositivi esistenti nel modo più semplice possibile.
|
boolean
|
removeUser(int userId)
Rimuovere un determinato utente dal dispositivo.
|
boolean
|
setDeviceOwner(String componentName, int userId)
Imposta un componente di amministrazione del dispositivo come proprietario del dispositivo in un determinato utente.
|
void
|
setFirstBootloaderReboot()
|
void
|
setSetting(String namespace, String key, String value)
Vedi setSetting(int, String, String, String) e eseguita sull'utente di sistema.
|
void
|
setSetting(int userId, String namespace, String key, String value)
Aggiungi un valore di impostazione allo spazio dei nomi di un determinato utente.
|
void
|
shutdownMicrodroid(ITestDevice microdroidDevice)
Arresta il dispositivo microdroid, se esistente.
|
boolean
|
startUser(int userId)
Avvia un determinato utente in background se è attualmente fermo.
|
boolean
|
startUser(int userId, boolean waitFlag)
Avvia un determinato utente in background se è attualmente fermo.
|
boolean
|
startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)
Avvia un determinato utente in background, visibile nella visualizzazione in questione (ovvero consente all'utente di avviare attività in quella visualizzazione).
|
boolean
|
stopUser(int userId, boolean waitFlag, boolean forceFlag)
Interrompere un determinato utente.
|
boolean
|
stopUser(int userId)
Interrompe un determinato utente.
|
boolean
|
supportsMicrodroid()
Controlla le condizioni preliminari per l'esecuzione di un microdroid.
|
boolean
|
supportsMicrodroid(boolean protectedVm)
Controlla le condizioni preliminari per l'esecuzione di un microdroid.
|
boolean
|
switchUser(int userId)
Passa a un altro userId con un timeout predefinito.
|
boolean
|
switchUser(int userId, long timeout)
Passa a un altro userId con il timeout specificato come scadenza.
|
Bugreport
|
takeBugreport()
Prende un report di bug e lo restituisce all'interno di un oggetto Bugreport per gestirlo.
|
String
|
uninstallPackage(String packageName)
Disinstalla un pacchetto Android dal dispositivo.
|
String
|
uninstallPackageForUser(String packageName, int userId)
Disinstalla un pacchetto Android dal dispositivo per un determinato utente.
|
void
|
waitForSnapuserd(SnapuserdWaitPhase currentPhase)
|
Campi
DISMISS_KEYGUARD_CMD
public static final String DISMISS_KEYGUARD_CMD
Comandi che possono essere utilizzati per ignorare la schermata di blocco.
Costruttori pubblici
Metodi pubblici
canSwitchToHeadlessSystemUser
public boolean canSwitchToHeadlessSystemUser ()
Restituisce se è consentito passare all'utente di sistema senza testa.
clearErrorDialogs
public boolean clearErrorDialogs ()
Prova a chiudere le eventuali finestre di dialogo di errore attualmente visualizzate nell'interfaccia utente del dispositivo.
Ritorni |
boolean |
true se non sono presenti finestre di dialogo o se queste sono state chiuse correttamente.
false in caso contrario. |
createUser
public int createUser (String name)
Crea un utente con un nome e flag predefiniti pari a 0.
Parametri |
name |
String : dell'utente da creare sul dispositivo |
Ritorni |
int |
L'intero per l'ID utente creato |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral,
boolean forTesting)
Crea un utente con un nome e gli indicatori specificati
Parametri |
name |
String : dell'utente da creare sul dispositivo |
guest |
boolean : attiva il flag utente --guest durante la creazione |
ephemeral |
boolean : attiva il flag utente --ephemeral durante la creazione |
forTesting |
boolean : attiva il flag di test --for-testing durante la creazione |
Ritorni |
int |
ID dell'utente creato |
createUser
public int createUser (String name,
boolean guest,
boolean ephemeral)
Crea un utente con un nome e gli indicatori specificati
Parametri |
name |
String : dell'utente da creare sul dispositivo |
guest |
boolean : attiva il flag utente --guest durante la creazione |
ephemeral |
boolean : attiva il flag utente --ephemeral durante la creazione |
Ritorni |
int |
ID dell'utente creato |
createUserNoThrow
public int createUserNoThrow (String name)
Crea un utente con un nome e flag predefiniti pari a 0.
Parametri |
name |
String : dell'utente da creare sul dispositivo |
Ritorni |
int |
L'intero per l'ID utente creato o -1 per errore. |
disableKeyguard
public void disableKeyguard ()
Tenta di disattivare la schermata di blocco.
Innanzitutto, attendi che l'invio di input sia pronto. Questo accade all'incirca nello stesso momento in cui il dispositivo segnala BOOT_COMPLETE, apparentemente in modo asincrono, perché l'implementazione attuale del framework presenta occasionalmente una condizione di gara. Viene quindi inviato il comando per chiudere la schermata di blocco (funziona solo su quelle non sicure)
doesFileExist
public boolean doesFileExist (String deviceFilePath)
Metodo di supporto per determinare se il file sul dispositivo esiste.
Parametri |
deviceFilePath |
String : il percorso assoluto del file sul dispositivo da controllare |
Ritorni |
boolean |
true se il file esiste, false altrimenti. |
doesFileExist
public boolean doesFileExist (String deviceFilePath,
int userId)
Metodo di supporto per determinare se il file sul dispositivo esiste per un determinato utente.
Parametri |
deviceFilePath |
String : il percorso assoluto del file sul dispositivo da controllare |
userId |
int : l'ID utente in base al quale verificare l'esistenza del file |
Ritorni |
boolean |
true se il file esiste, false altrimenti. |
dumpHeap
public File dumpHeap (String process,
String devicePath)
Prova a eseguire il dump dell'heap da system_server. È responsabilità del chiamante eliminare il file di cui è stato eseguito il dump.
Parametri |
process |
String : il nome del processo del dispositivo su cui eseguire dumpheap. |
devicePath |
String : il percorso sul dispositivo in cui inserire il dump. Deve trattarsi di una località in cui le autorizzazioni lo consentano. |
Ritorni |
File |
il ERROR(/File) contenente il report. Null se si è verificato un errore. |
getActiveApexes
public getActiveApexes ()
Recupera le informazioni sugli APEX attivati sul dispositivo.
getAllSettings
public getAllSettings (String namespace)
Restituisce le coppie chiave-valore dello spazio dei nomi richiesto.
Parametri |
namespace |
String : deve essere uno dei valori {"system", "secure", "global"} |
Ritorni |
|
la mappa delle coppie chiave-valore. Valore nullo se lo spazio dei nomi non è supportato. |
getAndroidId
public String getAndroidId (int userId)
Trova e restituisce l'id Android associato a un userId, null se non trovato.
getAndroidIds
public getAndroidIds ()
Crea una mappa degli ID Android trovati corrispondenti agli ID utente. Non è garantito che a ogni ID utente sia associato un ID Android in questa funzione, pertanto alcuni ID utente potrebbero corrispondere a null.
Ritorni |
|
Mappa degli ID Android trovati corrispondenti agli ID utente. |
getAppPackageInfo
public PackageInfo getAppPackageInfo (String packageName)
Recupera le informazioni su un pacchetto installato sul dispositivo.
Parametri |
packageName |
String |
getAppPackageInfos
public getAppPackageInfos ()
Recupera le informazioni sui pacchetti installati sul dispositivo.
getBugreport
public InputStreamSource getBugreport ()
Recupera una segnalazione di bug dal dispositivo.
L'implementazione di questa funzionalità continuerà a funzionare su un dispositivo senza scheda SD
(o in cui la scheda SD non è ancora montata).
getBugreportz
public InputStreamSource getBugreportz ()
Recupera un bugreportz dal dispositivo. Il file bugreport in formato ZIP contiene il file bugreport principale e altri file di log utili per il debug.
Supportato solo per "versione adb" > 1.0.36
getCurrentFoldableState
public DeviceFoldableState getCurrentFoldableState ()
Restituisce lo stato attuale del dispositivo pieghevole o null se si sono verificati problemi.
getCurrentUser
public int getCurrentUser ()
Restituisce l'ID dell'utente corrente in esecuzione. In caso di errore, restituisce -10000.
getFoldableStates
public getFoldableStates ()
Restituisce l'elenco degli stati del dispositivo pieghevole. Può essere ottenuto con "cmd device_state
print-states".
getInstalledPackageNames
public getInstalledPackageNames ()
Recupera i nomi dei pacchetti delle applicazioni presenti sul dispositivo.
Ritorni |
|
ERROR(/Set) dei String nomi dei pacchetti attualmente installati sul dispositivo. |
getKeyguardState
public KeyguardControllerState getKeyguardState ()
Restituisce un oggetto per ottenere lo stato corrente della schermata di blocco o null se non supportato.
getMainUserId
public Integer getMainUserId ()
Restituisce l'ID utente principale.
Ritorni |
Integer |
l'attributo userId dell'utente principale, se presente, e null se non è presente alcun utente principale. |
getMainlineModuleInfo
public getMainlineModuleInfo ()
Visualizza le informazioni sui moduli principali installati sul dispositivo.
Ritorni |
|
ERROR(/Set) dei String moduli principali attualmente installati sul dispositivo. |
public int getMaxNumberOfRunningUsersSupported ()
Ottieni il numero massimo di utenti supportati in esecuzione contemporaneamente. Il valore predefinito è 0.
Ritorni |
int |
un numero intero che indica il numero di utenti in esecuzione contemporaneamente |
public int getMaxNumberOfUsersSupported ()
Visualizza il numero massimo di utenti supportati. Il valore predefinito è 0.
Ritorni |
int |
un numero intero che indica il numero di utenti supportati |
getPrimaryUserId
public Integer getPrimaryUserId ()
Restituisce l'ID utente principale.
Ritorni |
Integer |
l'attributo userId dell'utente principale, se esistente, e null se non è presente alcun utente principale. |
getScreenshot
public InputStreamSource getScreenshot ()
Acquisisce uno screenshot dal dispositivo.
getScreenshot
public InputStreamSource getScreenshot (String format,
boolean rescale)
Acquisisce uno screenshot dal dispositivo. Ti consigliamo di utilizzare getScreenshot(String)
con la codifica JPEG per dimensioni inferiori.
Parametri |
format |
String : supportati PNG, JPEG |
rescale |
boolean : se lo screenshot deve essere ridimensionato per ridurre le dimensioni dell'immagine risultante |
getScreenshot
public InputStreamSource getScreenshot (long displayId)
Acquisisce uno screenshot dal dispositivo specificato dall'ID immagine. Il formato è PNG.
DA FARE: estendere le implementazioni precedenti per supportare "format" e "rescale"
Parametri |
displayId |
long : l'ID visualizzatore della schermata da cui acquisire lo screenshot. |
getScreenshot
public InputStreamSource getScreenshot (String format)
Acquisisce uno screenshot dal dispositivo.
Ti consigliamo di utilizzare getScreenshot(format) con codifica JPEG per dimensioni inferiori
Parametri |
format |
String : supportati PNG, JPEG |
getSetting
public String getSetting (String namespace,
String key)
Vedi getSetting(int, String, String)
e eseguita sull'utente di sistema.
Parametri |
namespace |
String |
key |
String |
getSetting
public String getSetting (int userId,
String namespace,
String key)
Restituisce il valore dell'impostazione richiesta.
Lo spazio dei nomi deve essere uno dei seguenti: {"system", "secure", "global"}
Parametri |
userId |
int |
namespace |
String |
key |
String |
Ritorni |
String |
Il valore associato a namespace:key di un utente. Null se non trovato. |
getUninstallablePackageNames
public getUninstallablePackageNames ()
Recupera i nomi dei pacchetti di applicazioni che possono essere disinstallati. Attualmente sono definiti come pacchetti non di sistema e pacchetti di sistema aggiornati.
Ritorni |
|
ERROR(/Set) di nomi di pacchetti String non disinstallabili attualmente installati sul
dispositivo. |
getUserFlags
public int getUserFlags (int userId)
Trova e restituisci gli indicatori di un determinato utente.
I flag sono definiti nella classe "android.content.pm.UserInfo" in Android Open Source Project.
Ritorni |
int |
gli indicatori associati all'ID utente fornito, se trovato, -10000 in tutti gli altri casi. |
getUserInfos
public getUserInfos ()
Recupera la mappa di useId a UserInfo
sul dispositivo. Viene generato DeviceRuntimeException
se l'output del dispositivo non è quello previsto.
Ritorni |
|
l'elenco di oggetti UserInfo. |
getUserSerialNumber
public int getUserSerialNumber (int userId)
Restituisce il numero di serie associato a userId, se trovato, -10000 in tutti gli altri casi.
hasFeature
public boolean hasFeature (String feature)
Controllare se una funzionalità è disponibile su un dispositivo.
Parametri |
feature |
String : il formato deve essere "feature:" o "" direttamente. |
Ritorni |
boolean |
Vero se la funzionalità viene trovata, falso in caso contrario. |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
String... extraArgs)
Installa un pacchetto Android sul dispositivo.
Parametri |
packageFile |
File : il file APK da installare |
reinstall |
boolean : true se deve essere eseguita una reinstallazione |
extraArgs |
String : argomenti extra facoltativi da passare. Per le opzioni disponibili, consulta "adb shell pm -h". |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Installa un pacchetto Android sul dispositivo.
Nota: solo i casi d'uso che richiedono il controllo esplicito della concessione dell'autorizzazione di runtime al momento dell'installazione devono chiamare questa funzione.
Parametri |
packageFile |
File : il file APK da installare |
reinstall |
boolean : true se deve essere eseguita una reinstallazione |
grantPermissions |
boolean : se tutte le autorizzazioni di runtime devono essere concesse al momento dell'installazione |
extraArgs |
String : argomenti extra facoltativi da passare. Per le opzioni disponibili, consulta "adb shell pm -h". |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
installPackage
public String installPackage (File packageFile,
File certFile,
boolean reinstall,
String... extraArgs)
Installa un pacchetto Android sul dispositivo.
Nota: solo i casi d'uso che richiedono il controllo esplicito della concessione dell'autorizzazione di runtime al momento dell'installazione devono chiamare questa funzione.
Parametri |
packageFile |
File : il file APK da installare |
certFile |
File : true se deve essere eseguita una reinstallazione |
reinstall |
boolean : se tutte le autorizzazioni di runtime devono essere concesse al momento dell'installazione |
extraArgs |
String : argomenti extra facoltativi da passare. Per le opzioni disponibili, consulta "adb shell pm -h". |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
Installa un pacchetto Android sul dispositivo per un determinato utente.
Nota: solo i casi d'uso che richiedono il controllo esplicito della concessione dell'autorizzazione di runtime al momento dell'installazione devono chiamare questa funzione.
Parametri |
packageFile |
File : il file APK da installare |
reinstall |
boolean : true se deve essere eseguita una reinstallazione |
grantPermissions |
boolean : se tutte le autorizzazioni di runtime devono essere concesse al momento dell'installazione |
userId |
int : l'ID utente intero per cui eseguire l'installazione. |
extraArgs |
String : argomenti extra facoltativi da passare. Per le opzioni disponibili, consulta "adb shell pm -h". |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
installPackageForUser
public String installPackageForUser (File packageFile,
boolean reinstall,
int userId,
String... extraArgs)
Installa un pacchetto Android sul dispositivo per un determinato utente.
Parametri |
packageFile |
File : il file APK da installare |
reinstall |
boolean : true se deve essere eseguita una reinstallazione |
userId |
int : l'ID utente intero per cui eseguire l'installazione. |
extraArgs |
String : argomenti extra facoltativi da passare. Per le opzioni disponibili, consulta "adb shell pm -h". |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
String... extraArgs)
Parametri |
packageFiles |
|
reinstall |
boolean |
extraArgs |
String |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Parametri |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
Parametri |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
userId |
int |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
int userId,
String... extraArgs)
Parametri |
packageFiles |
|
reinstall |
boolean |
userId |
int |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
String... extraArgs)
Parametri |
remoteApkPaths |
|
reinstall |
boolean |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Parametri |
remoteApkPaths |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
isAppEnumerationSupported
public boolean isAppEnumerationSupported ()
Verificare se la piattaforma sul dispositivo supporta l'enumerazione delle app
Ritorni |
boolean |
True se l'enumerazione delle app è supportata, false in caso contrario |
isHeadlessSystemUserMode
public boolean isHeadlessSystemUserMode ()
Restituisce se il dispositivo utilizza la modalità utente di sistema headless.
isMainUserPermanentAdmin
public boolean isMainUserPermanentAdmin ()
Restituisce se l'utente principale è un amministratore permanente e non può essere eliminato o sottoposto a downgrade allo stato di utente senza privilegi amministrativi.
isMultiUserSupported
public boolean isMultiUserSupported ()
Determina se il multiutente è supportato.
Ritorni |
boolean |
true se è supportato il multiutente, false in caso contrario |
isPackageInstalled
public boolean isPackageInstalled (String packageName)
Esegui una query sul dispositivo per un determinato nome del pacchetto per verificare se è attualmente installato o meno.
Parametri |
packageName |
String |
Ritorni |
boolean |
True se il pacchetto è segnalato come installato. Falso negli altri casi. |
isPackageInstalled
public boolean isPackageInstalled (String packageName,
String userId)
Esegui una query sul dispositivo per un determinato nome del pacchetto e un determinato ID utente per verificare se è attualmente installato o meno per quell'utente.
Parametri |
packageName |
String : il pacchetto di cui stiamo controllando l'installazione. |
userId |
String : l'ID utente per cui stiamo controllando l'installazione del pacchetto. Se è null, verrà utilizzato un valore di zero per l'utente principale. |
Ritorni |
boolean |
True se il pacchetto è segnalato come installato. Falso negli altri casi. |
isUserRunning
public boolean isUserRunning (int userId)
Verifica se un determinato utente è in esecuzione.
Ritorni |
boolean |
True se l'utente è in esecuzione, false in tutti gli altri casi. |
isUserSecondary
public boolean isUserSecondary (int userId)
Restituisce se l'utente specificato è un utente secondario in base ai relativi flag.
Ritorni |
boolean |
true se l'utente è secondario, false in caso contrario. |
isUserVisible
public boolean isUserVisible (int userId)
Controlla se l'utente specificato è visibile.
Un utente "visibile" è un utente che interagisce con l'utente "umano" e quindi è in grado di avviare attività di lancio (in genere nella visualizzazione predefinita).
isUserVisibleOnDisplay
public boolean isUserVisibleOnDisplay (int userId,
int displayId)
Controlla se l'utente specificato è visibile nella visualizzazione specificata.
Un utente "visibile" è un utente che interagisce con l'utente "umano" e quindi è in grado di avviare attività di lancio in quella visualizzazione.
Parametri |
userId |
int |
displayId |
int |
listDisplayIds
public listDisplayIds ()
Raccogliere l'elenco degli ID display disponibili sul dispositivo, come indicato da "dumpsys
SurfaceFlinger".
Ritorni |
|
L'elenco delle visualizzazioni. Il valore predefinito restituisce sempre il valore visualizzato predefinito 0. |
listDisplayIdsForStartingVisibleBackgroundUsers
public listDisplayIdsForStartingVisibleBackgroundUsers ()
Recupera l'elenco di display che possono essere utilizzati per start a user visible in the background
.
listUsers
public listUsers ()
Recupera l'elenco degli utenti sul dispositivo. Viene generato DeviceRuntimeException
se l'output del dispositivo non è come previsto.
Ritorni |
|
l'elenco degli ID utente. |
logBugreport
public boolean logBugreport (String dataName,
ITestLogger listener)
Metodo di supporto per acquisire una segnalazione di bug e registrarla per i reporter.
Parametri |
dataName |
String : il nome con cui verrà segnalata la segnalazione di bug. |
listener |
ITestLogger : un ITestLogger per registrare il report di bug. |
Ritorni |
boolean |
Vero se il logging è riuscito, falso in caso contrario. |
notifySnapuserd
public void notifySnapuserd (SnapuserdWaitPhase waitPhase)
Parametri |
waitPhase |
SnapuserdWaitPhase |
postInvocationTearDown
public void postInvocationTearDown (Throwable exception)
Passaggi aggiuntivi per la pulizia richiesta specifica del dispositivo che verranno eseguiti al termine dell'invocazione.
Parametri |
exception |
Throwable : se presente, l'eccezione finale sollevata dal fallimento dell'invocazione. |
removeAdmin
public boolean removeAdmin (String componentName,
int userId)
Rimuovi l'amministratore del dispositivo specificato nell'utente specificato e restituisci true
se l'operazione ha esito positivo, false
altrimenti.
Parametri |
componentName |
String : dell'amministratore del dispositivo da rimuovere. |
userId |
int : paese in cui risiede l'amministratore del dispositivo. |
Ritorni |
boolean |
Vero se l'operazione è riuscita, falso in caso contrario. |
removeOwners
public void removeOwners ()
Rimuovi tutti i proprietari di profili dei dispositivi esistenti nel modo più semplice possibile.
removeUser
public boolean removeUser (int userId)
Rimuovere un determinato utente dal dispositivo.
Parametri |
userId |
int : dell'utente da rimuovere |
Ritorni |
boolean |
true se è stato possibile rimuovere l'utente, false in caso contrario. |
setDeviceOwner
public boolean setDeviceOwner (String componentName,
int userId)
Imposta un componente di amministrazione del dispositivo come proprietario del dispositivo in un determinato utente.
Parametri |
componentName |
String : dell'amministratore del dispositivo per essere il proprietario del dispositivo. |
userId |
int : dell'utente in cui risiede il proprietario del dispositivo. |
Ritorni |
boolean |
Vero se l'operazione è riuscita, falso in caso contrario. |
setFirstBootloaderReboot
public void setFirstBootloaderReboot ()
setSetting
public void setSetting (String namespace,
String key,
String value)
Vedi setSetting(int, String, String, String)
e eseguita sull'utente di sistema.
Parametri |
namespace |
String |
key |
String |
value |
String |
setSetting
public void setSetting (int userId,
String namespace,
String key,
String value)
Aggiungi un valore di impostazione allo spazio dei nomi di un determinato utente. Alcune impostazioni saranno disponibili solo dopo un riavvio.
Lo spazio dei nomi deve essere uno dei seguenti: {"system", "secure", "global"}
Parametri |
userId |
int |
namespace |
String |
key |
String |
value |
String |
shutdownMicrodroid
public void shutdownMicrodroid (ITestDevice microdroidDevice)
Arresta il dispositivo microdroid, se esistente.
Parametri |
microdroidDevice |
ITestDevice |
startUser
public boolean startUser (int userId)
Avvia un determinato utente in background se è attualmente fermo. Se l'utente è già in esecuzione in background, questo metodo è un NOOP.
Parametri |
userId |
int : dell'utente da avviare in background |
Ritorni |
boolean |
true se l'utente è stato avviato correttamente in background. |
startUser
public boolean startUser (int userId,
boolean waitFlag)
Avvia un determinato utente in background se è attualmente fermo. Se l'utente è già in esecuzione in background, questo metodo è un NOOP. È possibile fornire un flag aggiuntivo per attendere che l'operazione abbia effetto.
Parametri |
userId |
int : dell'utente da avviare in background |
waitFlag |
boolean : il comando attenderà che l'utente venga avviato e sbloccato. |
Ritorni |
boolean |
true se l'utente è stato avviato correttamente in background. |
startVisibleBackgroundUser
public boolean startVisibleBackgroundUser (int userId,
int displayId,
boolean waitFlag)
Avvia un determinato utente in background, visibile nella visualizzazione in questione (ovvero consente all'utente di avviare attività in quella visualizzazione).
NOTA : questo comando non verifica se l'utente esiste, se la visualizzazione è disponibile, device supports such feature
e così via.
Parametri |
userId |
int : dell'utente da avviare in background |
displayId |
int : display su cui iniziare a mostrare l'utente |
waitFlag |
boolean : il comando attenderà che l'utente venga avviato e sbloccato. |
Ritorni |
boolean |
true se l'utente è stato avviato correttamente e visualizzato in background. |
stopUser
public boolean stopUser (int userId,
boolean waitFlag,
boolean forceFlag)
Interrompere un determinato utente. È possibile fornire flag aggiuntivi per attendere l'applicazione dell'operazione e forzare l'interruzione dell'utente. Impossibile interrompere l'utente corrente e quello di sistema.
Parametri |
userId |
int : dell'utente per interrompere. |
waitFlag |
boolean : il comando attenderà finché l'utente non si fermerà. |
forceFlag |
boolean : l'utente verrà interrotto forzatamente. |
Ritorni |
boolean |
true se l'utente è stato interrotto correttamente. |
stopUser
public boolean stopUser (int userId)
Interrompe un determinato utente. Se l'utente è già fermo, questo metodo è un NOOP.
Impossibile interrompere l'utente corrente e quello di sistema.
Parametri |
userId |
int : dell'utente per interrompere. |
Ritorni |
boolean |
true se l'utente è stato interrotto correttamente. |
supportaMicrodroid
public boolean supportsMicrodroid ()
Controlla le condizioni preliminari per l'esecuzione di un microdroid.
Ritorni |
boolean |
Restituisce true se i prerequisiti sono soddisfatti, false in caso contrario. |
supportaMicrodroid
public boolean supportsMicrodroid (boolean protectedVm)
Controlla le condizioni preliminari per l'esecuzione di un microdroid.
Parametri |
protectedVm |
boolean : true se microdroid deve essere eseguito su una VM protetta. |
Ritorni |
boolean |
Restituisce true se i prerequisiti sono soddisfatti, false in caso contrario. |
switchUser
public boolean switchUser (int userId)
Passa a un altro userId con un timeout predefinito. switchUser(int, long)
.
Ritorni |
boolean |
True se il nuovo userId corrisponde al provider userId. Falso negli altri casi. |
switchUser
public boolean switchUser (int userId,
long timeout)
Passa a un altro userId con il timeout specificato come scadenza.
Tenta di disattivare la schermata di blocco dopo la modifica dell'utente.
Parametri |
userId |
int |
timeout |
long : l'attesa prima di restituire false per switch-user non è riuscita. |
Ritorni |
boolean |
True se il nuovo userId corrisponde al provider userId. Falso negli altri casi. |
takeBugreport
public Bugreport takeBugreport ()
Prende un report di bug e lo restituisce all'interno di un oggetto Bugreport
per gestirlo. Restituisce null
in caso di problemi. Il file a cui si fa riferimento nell'oggetto Bugreport deve essere pulito tramite Bugreport.close()
.
uninstallPackage
public String uninstallPackage (String packageName)
Disinstalla un pacchetto Android dal dispositivo.
Parametri |
packageName |
String : il pacchetto Android da disinstallare |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
uninstallPackageForUser
public String uninstallPackageForUser (String packageName,
int userId)
Disinstalla un pacchetto Android dal dispositivo per un determinato utente.
Parametri |
packageName |
String : il pacchetto Android da disinstallare |
userId |
int : l'ID utente intero per cui eseguire la disinstallazione. |
Ritorni |
String |
un String con un codice di errore o null se l'operazione è riuscita. |
waitForSnapuserd
public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)
Parametri |
currentPhase |
SnapuserdWaitPhase |
Metodi protetti
createParser
protected AaptParser createParser (File appFile)
doAdbReboot
protected void doAdbReboot (NativeDevice.RebootMode rebootMode,
String reason)
Esegui un riavvio ADB.
Parametri |
rebootMode |
NativeDevice.RebootMode : una modalità di questo riavvio. |
reason |
String : per questo riavvio. |
getBugreportzInternal
protected File getBugreportzInternal ()
Metodo di assistenza interno per ottenere il file ZIP del report di bug come ERROR(/File)
.
getCheckNewUserSleep
protected long getCheckNewUserSleep ()
Esposto per i test.
getHostCurrentTime
protected long getHostCurrentTime ()
Esposto per i test
prePostBootSetup
protected void prePostBootSetup ()
Consente a ogni tipo di dispositivo (AndroidNativeDevice, TestDevice) di eseguire l'override di questo metodo per una configurazione specifica post-boot.