Appareil de test

public class TestDevice
extends NativeDevice

java.lang.Object
com.android.tradefed.device.NativeDevice
com.android.tradefed.device.TestDevice


Implémentation d'un ITestDevice pour un appareil android full stack

Résumé

Classes imbriquées

class TestDevice.MicrodroidBuilder

Un constructeur utilisé pour créer un Microdroid TestDevice.

Des champs

public static final String DISMISS_KEYGUARD_CMD

Commandes qui peuvent être utilisées pour désactiver le protège-clavier.

Constructeurs publics

TestDevice (IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

Méthodes publiques

boolean clearErrorDialogs ()

Essayez de fermer toutes les boîtes de dialogue d'erreur actuellement affichées sur l'interface utilisateur de l'appareil.

int createUser (String name)

Créez un utilisateur avec un nom donné et des drapeaux par défaut 0.

int createUser (String name, boolean guest, boolean ephemeral)

Créer un utilisateur avec un nom donné et les drapeaux fournis

int createUserNoThrow (String name)

Créez un utilisateur avec un nom donné et des drapeaux par défaut 0.

void disableKeyguard ()

Tente de désactiver le verrouillage du clavier.

boolean doesFileExist (String deviceFilePath)

Méthode d'assistance pour déterminer si le fichier sur l'appareil existe.

boolean doesFileExist (String deviceFilePath, int userId)

Méthode d'assistance pour déterminer si le fichier sur l'appareil existe pour un utilisateur donné.

File dumpHeap (String process, String devicePath)

Essayez de vider le tas du system_server.

getActiveApexes ()

Récupérez les informations sur les APEX activés sur l'appareil.

getAllSettings (String namespace)

Renvoie les paires clé-valeur de l'espace de noms demandé.

String getAndroidId (int userId)

Recherche et renvoie l'identifiant android associé à un userId, null s'il n'est pas trouvé.

getAndroidIds ()

Créez une carte des identifiants Android trouvés correspondant aux identifiants d'utilisateur.

PackageInfo getAppPackageInfo (String packageName)

Récupérer des informations sur un package installé sur l'appareil.

getAppPackageInfos ()

Récupérer les informations des packages installés sur l'appareil.

DeviceFoldableState getCurrentFoldableState ()

Renvoie l'état pliable actuel de l'appareil ou null si des problèmes se sont produits.

int getCurrentUser ()

Renvoie l'identifiant de l'utilisateur en cours d'exécution.

getFoldableStates ()

Renvoie la liste des états pliables sur l'appareil.

getInstalledPackageNames ()

Récupérez les noms des packages d'applications présents sur l'appareil.

KeyguardControllerState getKeyguardState ()

Renvoie un objet pour obtenir l'état actuel du keyguard ou null s'il n'est pas pris en charge.

getMainlineModuleInfo ()

Obtenez les informations sur les modules principaux installés sur l'appareil.

int getMaxNumberOfRunningUsersSupported ()

Obtenez le nombre maximum d'utilisateurs fonctionnant simultanément pris en charge.

int getMaxNumberOfUsersSupported ()

Obtenez le nombre maximum d'utilisateurs pris en charge.

Process getMicrodroidProcess ()
Integer getPrimaryUserId ()

Renvoie l'ID utilisateur principal.

InputStreamSource getScreenshot ()

Prend une capture d'écran de l'appareil.

InputStreamSource getScreenshot (String format, boolean rescale)

Prend une capture d'écran de l'appareil.

InputStreamSource getScreenshot (String format)

Prend une capture d'écran de l'appareil.

InputStreamSource getScreenshot (long displayId)

Prend une capture d'écran de l'appareil avec l'identifiant d'affichage.

String getSetting (String namespace, String key)

Voir getSetting(int, String, String) et effectué sur l'utilisateur système.

String getSetting (int userId, String namespace, String key)

Renvoie la valeur du paramètre demandé.

getUninstallablePackageNames ()

Récupérez les noms des packages d'application qui peuvent être désinstallés.

int getUserFlags (int userId)

Recherche et renvoie les drapeaux d'un utilisateur donné.

getUserInfos ()

Obtient la carte de useId à UserInfo sur l'appareil.

int getUserSerialNumber (int userId)

Renvoie le numéro de série associé à l'userId s'il est trouvé, -10000 dans tous les autres cas.

boolean hasFeature (String feature)

Vérifiez si une fonctionnalité est disponible sur un appareil.

String installPackage (File packageFile, boolean reinstall, String... extraArgs)

Installez un package Android sur l'appareil.

String installPackage (File packageFile, File certFile, boolean reinstall, String... extraArgs)

Installez un package Android sur l'appareil.

String installPackage (File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)

Installez un package Android sur l'appareil.

String installPackageForUser (File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

Installez un package Android sur l'appareil pour un utilisateur donné.

String installPackageForUser (File packageFile, boolean reinstall, int userId, String... extraArgs)

Installez un package Android sur l'appareil pour un utilisateur donné.

String installPackages ( packageFiles, boolean reinstall, String... extraArgs) installPackages ( packageFiles, boolean reinstall, String... extraArgs)

String installPackages ( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs) installPackages ( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)

String installPackagesForUser ( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs) installPackagesForUser ( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

String installPackagesForUser ( packageFiles, boolean reinstall, int userId, String... extraArgs) installPackagesForUser ( packageFiles, boolean reinstall, int userId, String... extraArgs)

String installRemotePackages ( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs) installRemotePackages ( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs)

String installRemotePackages ( remoteApkPaths, boolean reinstall, String... extraArgs) installRemotePackages ( remoteApkPaths, boolean reinstall, String... extraArgs)

boolean isAppEnumerationSupported ()

Vérifiez si la plate-forme sur l'appareil prend en charge l'énumération des applications

boolean isMultiUserSupported ()

Détermine si le multi-utilisateur est pris en charge.

boolean isPackageInstalled (String packageName)

Interrogez l'appareil pour un nom de package donné pour vérifier s'il est actuellement installé ou non.

boolean isPackageInstalled (String packageName, String userId)

Interrogez l'appareil pour un nom de package donné et un identifiant d'utilisateur donné pour vérifier s'il est actuellement installé ou non pour cet utilisateur.

boolean isUserRunning (int userId)

Vérifiez si un utilisateur donné est en cours d'exécution.

boolean isUserSecondary (int userId)

Retourne si l'utilisateur spécifié est un utilisateur secondaire selon ses drapeaux.

listDisplayIds ()

Collectez la liste des identifiants d'affichage disponibles sur l'appareil, comme indiqué par "dumpsys SurfaceFlinger".

listUsers ()

Obtient la liste des utilisateurs sur l'appareil.

void postInvocationTearDown (Throwable exception)

Étapes supplémentaires pour le nettoyage requis spécifique à l'appareil qui seront exécutés une fois l'invocation terminée.

boolean removeAdmin (String componentName, int userId)

Supprimez l'administrateur de l'appareil donné dans l'utilisateur donné et renvoyez true si cela réussit, false sinon.

void removeOwners ()

Supprimez tous les propriétaires de profils d'appareils existants avec le meilleur effort.

boolean removeUser (int userId)

Supprimer un utilisateur donné de l'appareil.

boolean setDeviceOwner (String componentName, int userId)

Définissez un composant d'administration de l'appareil en tant que propriétaire de l'appareil dans un utilisateur donné.

void setSetting (String namespace, String key, String value)

Voir setSetting(int, String, String, String) et effectué sur l'utilisateur système.

void setSetting (int userId, String namespace, String key, String value)

Ajoutez une valeur de paramètre à l'espace de noms d'un utilisateur donné.

void shutdownMicrodroid ( ITestDevice microdroidDevice)

Arrête le dispositif microdroid, s'il en existe un.

boolean startUser (int userId)

Démarre un utilisateur donné en arrière-plan s'il est actuellement arrêté.

boolean startUser (int userId, boolean waitFlag)

Démarre un utilisateur donné en arrière-plan s'il est actuellement arrêté.

boolean stopUser (int userId, boolean waitFlag, boolean forceFlag)

Arrêter un utilisateur donné.

boolean stopUser (int userId)

Arrête un utilisateur donné.

boolean supportsMicrodroid ()

Vérifie les conditions préalables pour exécuter un microdroid.

boolean supportsMicrodroid (boolean protectedVm)

Vérifie les conditions préalables pour exécuter un microdroid.

boolean switchUser (int userId)

Basculez vers un autre ID utilisateur avec un délai d'expiration par défaut.

boolean switchUser (int userId, long timeout)

Passez à un autre ID utilisateur avec le délai d'expiration fourni comme date limite.

String uninstallPackage (String packageName)

Désinstallez un package Android de l'appareil.

String uninstallPackageForUser (String packageName, int userId)

Désinstallez un package Android de l'appareil pour un utilisateur donné.

Méthodes protégées

AaptParser createParser (File appFile)
void doAdbReboot ( NativeDevice.RebootMode rebootMode, String reason)

Effectuez un redémarrage adb.

long getCheckNewUserSleep ()

Exposé pour essai.

long getHostCurrentTime ()

Exposé pour les tests

void prePostBootSetup ()

Permet à chaque type de périphérique (AndroidNativeDevice, TestDevice) de remplacer cette méthode pour une configuration post-démarrage spécifique.

Des champs

DISMISS_KEYGUARD_CMD

public static final String DISMISS_KEYGUARD_CMD

Commandes qui peuvent être utilisées pour désactiver le protège-clavier.

Constructeurs publics

Appareil de test

public TestDevice (IDevice device, 
                IDeviceStateMonitor stateMonitor, 
                IDeviceMonitor allocationMonitor)

Méthodes publiques

clearErrorDialogs

public boolean clearErrorDialogs ()

Essayez de fermer toutes les boîtes de dialogue d'erreur actuellement affichées sur l'interface utilisateur de l'appareil.

Retour
boolean true si aucune boîte de dialogue n'était présente ou si les boîtes de dialogue ont été effacées avec succès. false sinon.

Lance
DeviceNotAvailableException

Créer un utilisateur

public int createUser (String name)

Créez un utilisateur avec un nom donné et des drapeaux par défaut 0.

Paramètres
name String : de l'utilisateur à créer sur l'appareil

Retour
int l'entier de l'identifiant utilisateur créé

Lance
DeviceNotAvailableException

Créer un utilisateur

public int createUser (String name, 
                boolean guest, 
                boolean ephemeral)

Créer un utilisateur avec un nom donné et les drapeaux fournis

Paramètres
name String : de l'utilisateur à créer sur l'appareil

guest boolean : active le drapeau utilisateur --guest lors de la création

ephemeral boolean : active le flag utilisateur --ephemeral lors de la création

Retour
int identifiant de l'utilisateur créé

Lance
DeviceNotAvailableException

createUserNoThrow

public int createUserNoThrow (String name)

Créez un utilisateur avec un nom donné et des drapeaux par défaut 0.

Paramètres
name String : de l'utilisateur à créer sur l'appareil

Retour
int l'entier pour l'ID utilisateur créé ou -1 pour l'erreur.

Lance
DeviceNotAvailableException

désactiverKeyguard

public void disableKeyguard ()

Tente de désactiver le verrouillage du clavier.

Attendez d'abord que l'envoi d'entrée soit prêt, cela se produit à peu près au même moment où l'appareil signale BOOT_COMPLETE, apparemment de manière asynchrone, car l'implémentation actuelle de la structure a une condition de concurrence occasionnelle. Ensuite, la commande est envoyée pour supprimer le keyguard (fonctionne uniquement sur les non sécurisés)

Lance
DeviceNotAvailableException

est-ce queFichierExiste

public boolean doesFileExist (String deviceFilePath)

Méthode d'assistance pour déterminer si le fichier sur l'appareil existe.

Paramètres
deviceFilePath String : le chemin absolu du fichier sur l'appareil à vérifier

Retour
boolean true si le fichier existe, false sinon.

Lance
DeviceNotAvailableException

est-ce queFichierExiste

public boolean doesFileExist (String deviceFilePath, 
                int userId)

Méthode d'assistance pour déterminer si le fichier sur l'appareil existe pour un utilisateur donné.

Paramètres
deviceFilePath String : le chemin absolu du fichier sur l'appareil à vérifier

userId int : l'ID utilisateur par rapport auquel vérifier l'existence du fichier

Retour
boolean true si le fichier existe, false sinon.

Lance
DeviceNotAvailableException

dumpHeap

public File dumpHeap (String process, 
                String devicePath)

Essayez de vider le tas du system_server. Il est de la responsabilité de l'appelant de nettoyer le fichier vidé.

Paramètres
process String : le nom du processus de périphérique sur lequel effectuer le dumpheap.

devicePath String : le chemin sur le périphérique où placer le dump. Il doit s'agir d'un emplacement où les autorisations le permettent.

Retour
File l' ERROR(/File) contenant le rapport. Null si quelque chose a échoué.

Lance
DeviceNotAvailableException

getActiveApexes

public  getActiveApexes ()

Récupérez les informations sur les APEX activés sur l'appareil.

Retour
ERROR(/Set) d' ApexInfo actuellement activé sur l'appareil

Lance
DeviceNotAvailableException

getAllSettings

public  getAllSettings (String namespace)

Renvoie les paires clé-valeur de l'espace de noms demandé.

Paramètres
namespace String : doit être l'une des {"system", "secure", "global"}

Retour
la carte des paires clé-valeur. Null si l'espace de noms n'est pas pris en charge.

Lance
DeviceNotAvailableException

getAndroidId

public String getAndroidId (int userId)

Recherche et renvoie l'identifiant android associé à un userId, null s'il n'est pas trouvé.

Paramètres
userId int

Retour
String

Lance
DeviceNotAvailableException

getAndroidIds

public  getAndroidIds ()

Créez une carte des identifiants Android trouvés correspondant aux identifiants d'utilisateur. Il n'y a aucune garantie que chaque identifiant d'utilisateur trouvera un identifiant Android associé à cette fonction, de sorte que certains identifiants d'utilisateur peuvent correspondre à null.

Retour
Carte des identifiants Android trouvés correspondant aux identifiants d'utilisateur.

Lance
DeviceNotAvailableException

getAppPackageInfogetAppPackageInfo

public PackageInfo getAppPackageInfo (String packageName)

Récupérer des informations sur un package installé sur l'appareil.

Paramètres
packageName String

Retour
PackageInfo le PackageInfo ou null si les informations n'ont pas pu être récupérées

Lance
DeviceNotAvailableException

getAppPackageInfos

public  getAppPackageInfos ()

Récupérer les informations des packages installés sur l'appareil.

Retour
ERROR(/List) des PackageInfo s installés sur l'appareil.

Lance
DeviceNotAvailableException

getCurrentFoldableState

public DeviceFoldableState getCurrentFoldableState ()

Renvoie l'état pliable actuel de l'appareil ou null si des problèmes se sont produits.

Retour
DeviceFoldableState

Lance
DeviceNotAvailableException

getCurrentUser

public int getCurrentUser ()

Renvoie l'identifiant de l'utilisateur en cours d'exécution. En cas d'erreur, retourne -10000.

Retour
int

Lance
DeviceNotAvailableException

getFoldableStates

public  getFoldableStates ()

Renvoie la liste des états pliables sur l'appareil. Peut être obtenu avec "cmd device_state print-states".

Retour

Lance
DeviceNotAvailableException

getInstalledPackageNames

public  getInstalledPackageNames ()

Récupérez les noms des packages d'applications présents sur l'appareil.

Retour
ERROR(/Set) des noms de packages String actuellement installés sur l'appareil.

Lance
DeviceNotAvailableException

getKeyguardState

public KeyguardControllerState getKeyguardState ()

Renvoie un objet pour obtenir l'état actuel du keyguard ou null s'il n'est pas pris en charge.

Retour
KeyguardControllerState un KeyguardControllerState contenant un instantané de l'état du keyguard et renvoie Null si la requête Keyguard n'est pas prise en charge.

Lance
DeviceNotAvailableException

getMainlineModuleInfo

public  getMainlineModuleInfo ()

Obtenez les informations sur les modules principaux installés sur l'appareil.

Retour
ERROR(/Set) des modules principaux de String actuellement installés sur l'appareil.

Lance
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public int getMaxNumberOfRunningUsersSupported ()

Obtenez le nombre maximum d'utilisateurs fonctionnant simultanément pris en charge. La valeur par défaut est 0.

Retour
int un entier indiquant le nombre d'utilisateurs en cours d'exécution simultanément

Lance
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public int getMaxNumberOfUsersSupported ()

Obtenez le nombre maximum d'utilisateurs pris en charge. La valeur par défaut est 0.

Retour
int un entier indiquant le nombre d'utilisateurs pris en charge

Lance
DeviceNotAvailableException

getMicrodroidProcess

public Process getMicrodroidProcess ()

Retour
Process Renvoie le processus de la machine virtuelle Microdroid. Si TestDevice n'est pas un Microdroid, renvoie null.

getPrimaryUserId

public Integer getPrimaryUserId ()

Renvoie l'ID utilisateur principal.

Retour
Integer l'userId de l'utilisateur principal s'il y en a un, et null s'il n'y a pas d'utilisateur principal.

Lance
DeviceNotAvailableException

obtenir une capture d'écran

public InputStreamSource getScreenshot ()

Prend une capture d'écran de l'appareil.

Retour
InputStreamSource un InputStreamSource de la capture d'écran au format png, ou null si la capture d'écran n'a pas réussi.

Lance
DeviceNotAvailableException

obtenir une capture d'écran

public InputStreamSource getScreenshot (String format, 
                boolean rescale)

Prend une capture d'écran de l'appareil. Il est recommandé d'utiliser getScreenshot(String) à la place avec l'encodage JPEG pour une taille plus petite.

Paramètres
format String : PNG, JPEG pris en charge

rescale boolean : si la capture d'écran doit être redimensionnée pour réduire la taille de l'image résultante

Retour
InputStreamSource un InputStreamSource de la capture d'écran au format, ou null si la capture d'écran n'a pas réussi.

Lance
DeviceNotAvailableException

obtenir une capture d'écran

public InputStreamSource getScreenshot (String format)

Prend une capture d'écran de l'appareil. Recommandé d'utiliser getScreenshot(format) à la place avec l'encodage JPEG pour une taille plus petite

Paramètres
format String : PNG, JPEG pris en charge

Retour
InputStreamSource un InputStreamSource de la capture d'écran au format, ou null si la capture d'écran n'a pas réussi.

Lance
DeviceNotAvailableException

obtenir une capture d'écran

public InputStreamSource getScreenshot (long displayId)

Prend une capture d'écran de l'appareil avec l'identifiant d'affichage. Le format est PNG.

À FAIRE : étendre les implémentations ci-dessus pour prendre en charge le "format" et le "redimensionnement"

Paramètres
displayId long : l'identifiant d'affichage de l'écran à partir duquel obtenir une capture d'écran.

Retour
InputStreamSource un InputStreamSource de la capture d'écran au format, ou null si la capture d'écran n'a pas réussi.

Lance
DeviceNotAvailableException

getSetting

public String getSetting (String namespace, 
                String key)

Voir getSetting(int, String, String) et effectué sur l'utilisateur système.

Paramètres
namespace String

key String

Retour
String

Lance
DeviceNotAvailableException

getSetting

public String getSetting (int userId, 
                String namespace, 
                String key)

Renvoie la valeur du paramètre demandé. l'espace de noms doit être l'un des suivants : {"system", "secure", "global"}

Paramètres
userId int

namespace String

key String

Retour
String la valeur associée au namespace:key d'un utilisateur. Null si introuvable.

Lance
DeviceNotAvailableException

getUninstallablePackageNames

public  getUninstallablePackageNames ()

Récupérez les noms des packages d'application qui peuvent être désinstallés. Ceci est actuellement défini comme des packages non système et des packages système mis à jour.

Retour
ERROR(/Set) des noms de packages String désinstallables actuellement installés sur l'appareil.

Lance
DeviceNotAvailableException

getUserFlags

public int getUserFlags (int userId)

Recherche et renvoie les drapeaux d'un utilisateur donné. Les drapeaux sont définis dans la classe "android.content.pm.UserInfo" dans Android Open Source Project.

Paramètres
userId int

Retour
int les drapeaux associés à l'ID utilisateur fourni s'il est trouvé, -10000 dans tous les autres cas.

Lance
DeviceNotAvailableException

getUserInfos

public  getUserInfos ()

Obtient la carte de useId à UserInfo sur l'appareil. DeviceRuntimeException si la sortie de l'appareil n'est pas celle attendue.

Retour
la liste des objets UserInfo.

Lance
DeviceNotAvailableException

getUserSerialNumber

public int getUserSerialNumber (int userId)

Renvoie le numéro de série associé à l'userId s'il est trouvé, -10000 dans tous les autres cas.

Paramètres
userId int

Retour
int

Lance
DeviceNotAvailableException

aFonctionnalité

public boolean hasFeature (String feature)

Vérifiez si une fonctionnalité est disponible sur un appareil.

Paramètres
feature String : quel format doit être "fonction : " ou alors " " directement.

Retour
boolean Vrai si la fonctionnalité est trouvée, faux sinon.

Lance
DeviceNotAvailableException

installer le paquet

public String installPackage (File packageFile, 
                boolean reinstall, 
                String... extraArgs)

Installez un package Android sur l'appareil.

Paramètres
packageFile File : le fichier apk à installer

reinstall boolean : true si une réinstallation doit être effectuée

extraArgs String : arguments supplémentaires facultatifs à transmettre. Voir 'adb shell pm -h' pour les options disponibles.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

installer le paquet

public String installPackage (File packageFile, 
                File certFile, 
                boolean reinstall, 
                String... extraArgs)

Installez un package Android sur l'appareil.

Remarque : Seuls les cas d'utilisation nécessitant un contrôle explicite de l'octroi de l'autorisation d'exécution au moment de l'installation doivent appeler cette fonction.

Paramètres
packageFile File : le fichier apk à installer

certFile File : true si une réinstallation doit être effectuée

reinstall boolean : si toutes les autorisations d'exécution doivent être accordées au moment de l'installation

extraArgs String : arguments supplémentaires facultatifs à transmettre. Voir 'adb shell pm -h' pour les options disponibles.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

installer le paquet

public String installPackage (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Installez un package Android sur l'appareil.

Remarque : Seuls les cas d'utilisation nécessitant un contrôle explicite de l'octroi de l'autorisation d'exécution au moment de l'installation doivent appeler cette fonction.

Paramètres
packageFile File : le fichier apk à installer

reinstall boolean : true si une réinstallation doit être effectuée

grantPermissions boolean : si toutes les autorisations d'exécution doivent être accordées au moment de l'installation

extraArgs String : arguments supplémentaires facultatifs à transmettre. Voir 'adb shell pm -h' pour les options disponibles.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

installPackageForUser

public String installPackageForUser (File packageFile, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

Installez un package Android sur l'appareil pour un utilisateur donné.

Remarque : Seuls les cas d'utilisation nécessitant un contrôle explicite de l'octroi de l'autorisation d'exécution au moment de l'installation doivent appeler cette fonction.

Paramètres
packageFile File : le fichier apk à installer

reinstall boolean : true si une réinstallation doit être effectuée

grantPermissions boolean : si toutes les autorisations d'exécution doivent être accordées au moment de l'installation

userId int : l'ID utilisateur entier pour lequel installer.

extraArgs String : arguments supplémentaires facultatifs à transmettre. Voir 'adb shell pm -h' pour les options disponibles.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

installPackageForUser

public String installPackageForUser (File packageFile, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

Installez un package Android sur l'appareil pour un utilisateur donné.

Paramètres
packageFile File : le fichier apk à installer

reinstall boolean : true si une réinstallation doit être effectuée

userId int : l'ID utilisateur entier pour lequel installer.

extraArgs String : arguments supplémentaires facultatifs à transmettre. Voir 'adb shell pm -h' pour les options disponibles.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                String... extraArgs)

Paramètres
packageFiles

reinstall boolean

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

installPackages

public String installPackages ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Paramètres
packageFiles

reinstall boolean

grantPermissions boolean

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

Paramètres
packageFiles

reinstall boolean

grantPermissions boolean

userId int

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

installPackagesForUser

public String installPackagesForUser ( packageFiles, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

Paramètres
packageFiles

reinstall boolean

userId int

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Paramètres
remoteApkPaths

reinstall boolean

grantPermissions boolean

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

installRemotePackages

public String installRemotePackages ( remoteApkPaths, 
                boolean reinstall, 
                String... extraArgs)

Paramètres
remoteApkPaths

reinstall boolean

extraArgs String

Retour
String

Lance
DeviceNotAvailableException

isAppEnumerationSupportedisAppEnumerationSupported

public boolean isAppEnumerationSupported ()

Vérifiez si la plate-forme sur l'appareil prend en charge l'énumération des applications

Retour
boolean True si l'énumération des applications est prise en charge, false sinon

Lance
DeviceNotAvailableException

isMultiUserSupported

public boolean isMultiUserSupported ()

Détermine si le multi-utilisateur est pris en charge.

Retour
boolean true si le multi-utilisateur est pris en charge, false sinon

Lance
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName)

Interrogez l'appareil pour un nom de package donné pour vérifier s'il est actuellement installé ou non.

Paramètres
packageName String

Retour
boolean True si le package est signalé comme installé. Faux sinon.

Lance
DeviceNotAvailableException

isPackageInstalled

public boolean isPackageInstalled (String packageName, 
                String userId)

Interrogez l'appareil pour un nom de package donné et un identifiant d'utilisateur donné pour vérifier s'il est actuellement installé ou non pour cet utilisateur.

Paramètres
packageName String : le paquet dont nous vérifions s'il est installé.

userId String : l'ID utilisateur pour lequel nous vérifions que le package est installé. Si null, l'utilisateur principal zéro sera utilisé.

Retour
boolean True si le package est signalé comme installé. Faux sinon.

Lance
DeviceNotAvailableException

isUserRunning

public boolean isUserRunning (int userId)

Vérifiez si un utilisateur donné est en cours d'exécution.

Paramètres
userId int

Retour
boolean Vrai si l'utilisateur est en cours d'exécution, faux dans tous les autres cas.

Lance
DeviceNotAvailableException

isUserSecondary

public boolean isUserSecondary (int userId)

Retourne si l'utilisateur spécifié est un utilisateur secondaire selon ses drapeaux.

Paramètres
userId int

Retour
boolean true si l'utilisateur est secondaire, false sinon.

Lance
DeviceNotAvailableException

listDisplayIdslistDisplayIds

public  listDisplayIds ()

Collectez la liste des identifiants d'affichage disponibles sur l'appareil, comme indiqué par "dumpsys SurfaceFlinger".

Retour
La liste des affichages. Par défaut renvoie toujours l'affichage par défaut 0.

Lance
DeviceNotAvailableException

listeUtilisateurs

public  listUsers ()

Obtient la liste des utilisateurs sur l'appareil. DeviceRuntimeException si la sortie de l'appareil n'est pas celle attendue.

Retour
la liste des identifiants des utilisateurs.

Lance
DeviceNotAvailableException

postInvocationTearDown

public void postInvocationTearDown (Throwable exception)

Étapes supplémentaires pour le nettoyage requis spécifique à l'appareil qui seront exécutés une fois l'invocation terminée.

Paramètres
exception Throwable : le cas échéant, la dernière exception levée par l'échec de l'invocation.

supprimerAdmin

public boolean removeAdmin (String componentName, 
                int userId)

Supprimez l'administrateur de l'appareil donné dans l'utilisateur donné et renvoyez true si cela réussit, false sinon.

Paramètres
componentName String : de l'administrateur de l'appareil à supprimer.

userId int : de l'utilisateur dans lequel vit l'administrateur de l'appareil.

Retour
boolean Vrai si c'est réussi, faux sinon.

Lance
DeviceNotAvailableException

supprimerPropriétaires

public void removeOwners ()

Supprimez tous les propriétaires de profils d'appareils existants avec le meilleur effort.

Lance
DeviceNotAvailableException

supprimer l'utilisateur

public boolean removeUser (int userId)

Supprimer un utilisateur donné de l'appareil.

Paramètres
userId int : de l'utilisateur à supprimer

Retour
boolean true si nous avons réussi à supprimer l'utilisateur, false sinon.

Lance
DeviceNotAvailableException

setDeviceOwner

public boolean setDeviceOwner (String componentName, 
                int userId)

Définissez un composant d'administration de l'appareil en tant que propriétaire de l'appareil dans un utilisateur donné.

Paramètres
componentName String : de l'administrateur de l'appareil à être propriétaire de l'appareil.

userId int : de l'utilisateur dans lequel vit le propriétaire de l'appareil.

Retour
boolean Vrai si c'est réussi, faux sinon.

Lance
DeviceNotAvailableException

setSetting

public void setSetting (String namespace, 
                String key, 
                String value)

Voir setSetting(int, String, String, String) et effectué sur l'utilisateur système.

Paramètres
namespace String

key String

value String

Lance
DeviceNotAvailableException

setSetting

public void setSetting (int userId, 
                String namespace, 
                String key, 
                String value)

Ajoutez une valeur de paramètre à l'espace de noms d'un utilisateur donné. Certains paramètres ne seront disponibles qu'après un redémarrage. l'espace de noms doit être l'un des suivants : {"system", "secure", "global"}

Paramètres
userId int

namespace String

key String

value String

Lance
DeviceNotAvailableException

arrêtMicrodroid

public void shutdownMicrodroid (ITestDevice microdroidDevice)

Arrête le dispositif microdroid, s'il en existe un.

Paramètres
microdroidDevice ITestDevice

Lance
DeviceNotAvailableException

startUser

public boolean startUser (int userId)

Démarre un utilisateur donné en arrière-plan s'il est actuellement arrêté. Si l'utilisateur s'exécute déjà en arrière-plan, cette méthode est un NOOP.

Paramètres
userId int : de l'utilisateur à démarrer en arrière-plan

Retour
boolean true si l'utilisateur a été démarré avec succès en arrière-plan.

Lance
DeviceNotAvailableException

startUser

public boolean startUser (int userId, 
                boolean waitFlag)

Démarre un utilisateur donné en arrière-plan s'il est actuellement arrêté. Si l'utilisateur s'exécute déjà en arrière-plan, cette méthode est un NOOP. Possibilité de fournir un indicateur supplémentaire pour attendre que l'opération prenne effet.

Paramètres
userId int : de l'utilisateur à démarrer en arrière-plan

waitFlag boolean : fera attendre la commande jusqu'à ce que l'utilisateur soit démarré et déverrouillé.

Retour
boolean true si l'utilisateur a été démarré avec succès en arrière-plan.

Lance
DeviceNotAvailableException

stopUser

public boolean stopUser (int userId, 
                boolean waitFlag, 
                boolean forceFlag)

Arrêter un utilisateur donné. Possibilité de fournir des indicateurs supplémentaires pour attendre que l'opération prenne effet et forcer l'arrêt de l'utilisateur. Impossible d'arrêter l'utilisateur actuel et l'utilisateur système.

Paramètres
userId int : de l'utilisateur à arrêter.

waitFlag boolean : fera attendre la commande jusqu'à ce que l'utilisateur soit arrêté.

forceFlag boolean : forcera l'arrêt de l'utilisateur.

Retour
boolean true si l'utilisateur a été arrêté avec succès.

Lance
DeviceNotAvailableException

stopUser

public boolean stopUser (int userId)

Arrête un utilisateur donné. Si l'utilisateur est déjà arrêté, cette méthode est un NOOP. Impossible d'arrêter l'utilisateur actuel et l'utilisateur système.

Paramètres
userId int : de l'utilisateur à arrêter.

Retour
boolean true si l'utilisateur a été arrêté avec succès.

Lance
DeviceNotAvailableException

prend en chargeMicrodroid

public boolean supportsMicrodroid ()

Vérifie les conditions préalables pour exécuter un microdroid.

Retour
boolean renvoie true si les préconditions sont satisfaites, false sinon.

prend en chargeMicrodroid

public boolean supportsMicrodroid (boolean protectedVm)

Vérifie les conditions préalables pour exécuter un microdroid.

Paramètres
protectedVm boolean : vrai si le microdroid est destiné à s'exécuter sur une VM protégée.

Retour
boolean renvoie true si les préconditions sont satisfaites, false sinon.

changer d'utilisateur

public boolean switchUser (int userId)

Basculez vers un autre ID utilisateur avec un délai d'expiration par défaut. switchUser(int, long) .

Paramètres
userId int

Retour
boolean True si le nouvel ID utilisateur correspond au fournisseur d'ID utilisateur. Faux sinon.

Lance
DeviceNotAvailableException

changer d'utilisateur

public boolean switchUser (int userId, 
                long timeout)

Passez à un autre ID utilisateur avec le délai d'expiration fourni comme date limite. Essayez de désactiver le verrouillage du clavier une fois le changement d'utilisateur réussi.

Paramètres
userId int

timeout long : attendre avant de retourner false pour l'échec du changement d'utilisateur.

Retour
boolean True si le nouvel ID utilisateur correspond au fournisseur d'ID utilisateur. Faux sinon.

Lance
DeviceNotAvailableException

uninstallPackage

public String uninstallPackage (String packageName)

Désinstallez un package Android de l'appareil.

Paramètres
packageName String : le package Android à désinstaller

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

désinstallerPackageForUser

public String uninstallPackageForUser (String packageName, 
                int userId)

Désinstallez un package Android de l'appareil pour un utilisateur donné.

Paramètres
packageName String : le package Android à désinstaller

userId int : l'ID utilisateur entier pour lequel désinstaller.

Retour
String une String avec un code d'erreur, ou null en cas de succès.

Lance
DeviceNotAvailableException

Méthodes protégées

createParser

protected AaptParser createParser (File appFile)

Paramètres
appFile File

Retour
AaptParser

doAdbReboot

protected void doAdbReboot (NativeDevice.RebootMode rebootMode, 
                String reason)

Effectuez un redémarrage adb.

Paramètres
rebootMode NativeDevice.RebootMode : un mode de ce redémarrage.

reason String : pour ce redémarrage.

Lance
DeviceNotAvailableException

getCheckNewUserSleep

protected long getCheckNewUserSleep ()

Exposé pour essai.

Retour
long

getHostCurrentTime

protected long getHostCurrentTime ()

Exposé pour les tests

Retour
long

prePostBootSetup

protected void prePostBootSetup ()

Permet à chaque type de périphérique (AndroidNativeDevice, TestDevice) de remplacer cette méthode pour une configuration post-démarrage spécifique.

Lance
DeviceNotAvailableException