ITestDevice

public interface ITestDevice
implements INativeDevice

com.android.tradefed.device.ITestDevice


Proporciona una API confiable y de un nivel ligeramente superior a un IDevice de ddmlib.

Vuelve a intentar enviar comandos al dispositivo una cantidad configurable de veces y proporciona una interfaz de recuperación para los dispositivos que no responden.

Resumen

Clases anidadas

class ITestDevice.ApexInfo

Una clase struct simple para almacenar información sobre un solo APEX 

class ITestDevice.MountPointInfo

Una clase struct simple para almacenar información sobre un solo punto de montaje 

Métodos públicos

abstract String adbInstallPackage(File packageFile, boolean reinstall, String... extraArgs)

Instala un paquete de Android en el dispositivo con el comando adb.

abstract String adbInstallPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)

Instala un paquete de Android en el dispositivo con el comando adb.

abstract boolean canSwitchToHeadlessSystemUser()

Devuelve si se permite cambiar al usuario SYSTEM sin interfaz gráfica.

abstract boolean checkConnectivity()

Comprueba que el dispositivo tenga conectividad de red.

abstract boolean clearErrorDialogs()

Intenta descartar los diálogos de error que se muestran actualmente en la IU del dispositivo.

abstract void clearLastConnectedWifiNetwork()

Borra la última red Wi-Fi a la que se conectó.

default boolean connectToWifiNetwork(Map<String, String> wifiSsidToPsk, boolean scanSsid)

Este método dejó de estar disponible. utiliza connectToWifiNetworkWithResult(Map,boolean) en su lugar.

default boolean connectToWifiNetwork(Map<String, String> wifiSsidToPsk)

Este método dejó de estar disponible. utiliza connectToWifiNetworkWithResult(Map) en su lugar.

default boolean connectToWifiNetwork(String wifiSsid, String wifiPsk)

Este método dejó de estar disponible. utiliza connectToWifiNetworkWithResult(String,String) en su lugar.

default boolean connectToWifiNetwork(String wifiSsid, String wifiPsk, boolean scanSsid)

Este método dejó de estar disponible. utiliza connectToWifiNetworkWithResult(String,String,boolean) en su lugar.

default boolean connectToWifiNetworkIfNeeded(String wifiSsid, String wifiPsk, boolean scanSsid)

Este método dejó de estar disponible. En su lugar, usa connectToWifiNetworkIfNeededWithResult(String,String,boolean).

default boolean connectToWifiNetworkIfNeeded(String wifiSsid, String wifiPsk)

Este método dejó de estar disponible. utiliza connectToWifiNetworkIfNeededWithResult(String,String) en su lugar.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult(String wifiSsid, String wifiPsk, boolean scanSsid)

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult(String wifiSsid, String wifiPsk)

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(String wifiSsid, String wifiPsk, boolean scanSsid)

Se conecta a una red Wi-Fi.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(Map<String, String> wifiSsidToPsk)

Se conecta a una red Wi-Fi.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(Map<String, String> wifiSsidToPsk, boolean scanSsid)

Se conecta a una red Wi-Fi.

abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult(String wifiSsid, String wifiPsk)

Se conecta a una red Wi-Fi.

abstract int createUser(String name)

Crea un usuario con un nombre determinado y marcas predeterminadas 0.

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

Crea un usuario con un nombre determinado y las marcas proporcionadas

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

Crea un usuario con un nombre determinado y las marcas proporcionadas

abstract int createUserNoThrow(String name)

Crea un usuario con un nombre determinado y marcas predeterminadas 0.

abstract void deregisterDeviceActionReceiver(IDeviceActionReceiver deviceActionReceiver)

Quita el IDeviceActionReceiver registrado.

abstract void disableKeyguard()

Intenta inhabilitar el bloqueo de teclado.

abstract boolean disableNetworkMonitor()

Inhabilita la supervisión de la red en el dispositivo.

abstract boolean disconnectFromWifi()

Se desconecta de una red Wi-Fi.

abstract boolean doesFileExist(String deviceFilePath, int userId)

Método auxiliar para determinar si existe un archivo en el dispositivo para un usuario determinado.

abstract File dumpHeap(String process, String devicePath)

Intenta volcar el montón de system_server.

abstract boolean enableNetworkMonitor()

Habilita la supervisión de la red en el dispositivo.

abstract Set<ITestDevice.ApexInfo> getActiveApexes()

Recupera la información sobre los APEX activados en el dispositivo.

abstract Map<String, String> getAllSettings(String namespace)

Devuelve pares clave-valor del espacio de nombres solicitado.

abstract String getAndroidId(int userId)

Busca y devuelve el android-id asociado a un userId. Si no se encuentra, devuelve un valor nulo.

abstract Map<Integer, String> getAndroidIds()

Crea un mapa de los IDs de Android que coinciden con los IDs de usuario.

abstract PackageInfo getAppPackageInfo(String packageName)

Recupera información sobre un paquete instalado en el dispositivo.

abstract List<PackageInfo> getAppPackageInfos()

Recupera información de los paquetes instalados en el dispositivo.

abstract InputStreamSource getBugreport()

Recupera un informe de errores del dispositivo.

abstract InputStreamSource getBugreportz()

Recupera un bugreportz del dispositivo.

abstract DeviceFoldableState getCurrentFoldableState()

Devuelve el estado actual de plegado del dispositivo o un valor nulo si se produjo algún problema.

abstract int getCurrentUser()

Devuelve el ID del usuario que se está ejecutando actualmente.

abstract Set<DeviceFoldableState> getFoldableStates()

Devuelve la lista de estados de plegado del dispositivo.

abstract Set<String> getInstalledPackageNames()

Recupera los nombres de los paquetes de aplicaciones presentes en el dispositivo.

abstract String getIpAddress()

Obtiene la dirección IP del dispositivo.

abstract KeyguardControllerState getKeyguardState()

Devuelve un objeto para obtener el estado actual de Keyguard o un valor nulo si no se admite.

abstract Integer getMainUserId()

Devuelve el ID del usuario principal.

abstract Set<String> getMainlineModuleInfo()

Obtiene información sobre los módulos de la línea principal instalados en el dispositivo.

abstract int getMaxNumberOfRunningUsersSupported()

Obtiene la cantidad máxima de usuarios que se pueden ejecutar de forma simultánea.

abstract int getMaxNumberOfUsersSupported(String userType)

Obtiene la cantidad máxima de usuarios admitidos del tipo de usuario determinado.

abstract int getMaxNumberOfUsersSupported()

Este método dejó de estar disponible. use getMaxNumberOfUsersSupported(String userType) para obtener la cantidad máxima de usuarios admitidos para un tipo de usuario determinado.

abstract TestDeviceOptions getOptions()

Recupera las opciones de prueba para el dispositivo.

abstract Integer getPrimaryUserId()

Este método dejó de estar disponible. getPrimaryUser se dejó de usar en el servicio UserManager. Usa ERROR(/android.os.UserManager#getMainUserId()) para obtener el primer usuario completo o 0 para el sistema. Nota: En el caso de los sistemas sin interfaz gráfica, no se trata de un usuario completo.

abstract int getRemainingCreatableUserCount(String userType)

Devuelve la cantidad de usuarios del tipo de usuario determinado que se pueden crear en este dispositivo.

abstract InputStreamSource getScreenshot(Long displayId, String format, boolean rescale)

Toma una captura de pantalla del dispositivo con el ID de pantalla determinado en el formato admitido.

abstract InputStreamSource getScreenshot(String format, boolean rescale)

Toma una captura de pantalla del dispositivo.

abstract InputStreamSource getScreenshot(String format)

Toma una captura de pantalla del dispositivo.

abstract InputStreamSource getScreenshot(long displayId)

Toma una captura de pantalla del dispositivo con el ID de pantalla determinado.

abstract InputStreamSource getScreenshot()

Toma una captura de pantalla del dispositivo.

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

Devuelve el valor del parámetro de configuración solicitado.

abstract String getSetting(String namespace, String key)

Consulta getSetting(int,String,String) y se realiza en el usuario del sistema.

abstract Set<String> getUninstallablePackageNames()

Recupera los nombres de los paquetes de aplicaciones que se pueden desinstalar.

abstract int getUserFlags(int userId)

Busca y devuelve las marcas de un usuario determinado.

abstract Map<Integer, UserInfo> getUserInfos()

Obtiene el mapa de useId a UserInfo en el dispositivo.

abstract int getUserSerialNumber(int userId)

Devuelve el número de serie asociado al userId si se encuentra; de lo contrario, devuelve -10000.

abstract int getUserVisibleOnDisplay(int displayId)

Obtiene el ID del usuario visible en la pantalla determinada.

abstract boolean hasFeature(String feature)

Comprueba si una función está disponible en un dispositivo.

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

Instala un paquete de Android en el dispositivo.

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

Instala un paquete de Android en el dispositivo.

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

Instala un paquete de Android en el dispositivo para un usuario determinado.

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

Instala un paquete de Android en el dispositivo para un usuario determinado.

abstract boolean installPackageWithIncrementalMode(File[] apkFiles, String[] extraArgs, String userId)

Instala APKs con el modo incremental.

default String installPackages(List<File> packageFiles, boolean reinstall, String... extraArgs)

Instalar una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales)

default String installPackages(List<File> packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) que se encuentran en el dispositivo Android.

default String installPackagesForUser(List<File> packageFiles, boolean reinstall, int userId, String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) para un usuario determinado.

default String installPackagesForUser(List<File> packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) para un usuario determinado.

abstract boolean isHeadlessSystemUserMode()

Devuelve si el dispositivo usa el modo de usuario del sistema sin interfaz gráfica.

abstract boolean isMainUserPermanentAdmin()

Devuelve si el usuario principal es administrador permanente y no se puede borrar ni degradar a un estado que no sea de administrador.

abstract boolean isMultiUserSupported()

Devuelve si este dispositivo admite varios usuarios intercambiables con su propio acceso y espacio personalizable.

abstract boolean isPackageInstalled(String packageName, String userId)

Consulta el dispositivo para un nombre de paquete y un ID de usuario determinados para verificar si está instalado actualmente para ese usuario.

abstract boolean isPackageInstalled(String packageName)

Consulta el dispositivo para un nombre de paquete determinado y verifica si está instalado actualmente.

abstract boolean isUserRunning(int userId)

Comprueba si un usuario determinado está en ejecución.

abstract boolean isUserSecondary(int userId)

Devuelve si el usuario especificado es un usuario secundario según sus marcas.

abstract boolean isUserVisible(int userId)

Verifica si el usuario determinado es visible.

abstract boolean isUserVisibleOnDisplay(int userId, int displayId)

Verifica si el usuario determinado es visible en la pantalla determinada.

abstract boolean isVisibleBackgroundUsersOnDefaultDisplaySupported()

Devuelve si el dispositivo permite que los usuarios se inicien de forma visible en segundo plano en ERROR(/java.android.view.Display#DEFAULT_DISPLAY).

abstract boolean isVisibleBackgroundUsersSupported()

Devuelve si el dispositivo permite que los usuarios se inicien de forma visible en segundo plano.

abstract boolean isWifiEnabled()

Prueba si el Wi-Fi está habilitado.

abstract Set<Long> listDisplayIds()

Recopila la lista de IDs de pantallas disponibles en el dispositivo, según lo indica "dumpsys SurfaceFlinger".

abstract Set<Integer> listDisplayIdsForStartingVisibleBackgroundUsers()

Obtiene la lista de pantallas que se pueden usar para start a user visible in the background.

abstract ArrayList<Integer> listUsers()

Obtiene la lista de usuarios del dispositivo.

abstract boolean logBugreport(String dataName, ITestLogger listener)

Método auxiliar para tomar un informe de errores y registrarlo en los informes.

default void notifySnapuserd(SnapuserdWaitPhase waitPhase)

Notifica al dispositivo que espere a que se complete snapuserd.

abstract void registerDeviceActionReceiver(IDeviceActionReceiver deviceActionReceiver)

Registra un IDeviceActionReceiver para este dispositivo.

abstract boolean removeAdmin(String componentName, int userId)

Quita el administrador de dispositivos determinado del usuario determinado y devuelve true si se realiza correctamente o false si no se realiza correctamente.

abstract void removeOwners()

Quita todos los propietarios existentes del perfil del dispositivo con el mejor esfuerzo.

abstract boolean removeUser(int userId)

Quita un usuario determinado del dispositivo.

abstract boolean setDeviceOwner(String componentName, int userId)

Establece un componente de administrador del dispositivo como propietario del dispositivo en el usuario determinado.

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

Consulta setSetting(int,String,String,String) y se realiza en el usuario del sistema.

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

Agrega un valor de configuración al espacio de nombres de un usuario determinado.

abstract boolean startUser(int userId)

Inicia un usuario determinado en segundo plano si está detenido.

abstract boolean startUser(int userId, boolean waitFlag)

Inicia un usuario determinado en segundo plano si está detenido.

abstract boolean startVisibleBackgroundUser(int userId, int displayId, boolean waitFlag)

Inicia un usuario determinado en segundo plano, visible en la pantalla determinada (es decir, permite que el usuario inicie actividades en esa pantalla).

abstract boolean stopUser(int userId)

Detiene a un usuario determinado.

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

Detiene a un usuario determinado.

abstract boolean switchUser(int userId)

Cambia a otro userId con un tiempo de espera predeterminado.

abstract boolean switchUser(int userId, long timeout)

Cambia a otro userId con el tiempo de espera proporcionado como fecha límite.

abstract Bugreport takeBugreport()

Toma un informe de errores y lo devuelve dentro de un objeto Bugreport para controlarlo.

abstract String uninstallPackage(String packageName)

Desinstala un paquete de Android del dispositivo.

abstract String uninstallPackageForUser(String packageName, int userId)

Desinstala un paquete de Android del dispositivo para un usuario determinado.

default void waitForSnapuserd(SnapuserdWaitPhase currentPhase)

Si es lo esperado, espera a que se complete snapuserd.

Métodos públicos

adbInstallPackage

public abstract String adbInstallPackage (File packageFile, 
                boolean reinstall, 
                String... extraArgs)

Instala un paquete de Android en el dispositivo con el comando adb.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

adbInstallPackage

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

Instala un paquete de Android en el dispositivo con el comando adb.

Nota: Solo los casos de uso que requieren un control explícito del otorgamiento de permisos de tiempo de ejecución en el momento de la instalación deben llamar a esta función.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

grantPermissions boolean: Indica si se deben otorgar todos los permisos de tiempo de ejecución durante la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

canSwitchToHeadlessSystemUser

public abstract boolean canSwitchToHeadlessSystemUser ()

Devuelve si se permite cambiar al usuario SYSTEM sin interfaz gráfica.

Muestra
boolean

Arroja
DeviceNotAvailableException

checkConnectivity

public abstract boolean checkConnectivity ()

Comprueba que el dispositivo tenga conectividad de red.

Muestra
boolean true si el dispositivo tiene una conexión de red activa; de lo contrario, false

Arroja
DeviceNotAvailableException si se pierde la conexión con el dispositivo y no se puede recuperar.

clearErrorDialogs

public abstract boolean clearErrorDialogs ()

Intenta descartar los diálogos de error que se muestran actualmente en la IU del dispositivo.

Muestra
boolean true si no había diálogos o si se borraron correctamente. false en caso contrario

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

clearLastConnectedWifiNetwork

public abstract void clearLastConnectedWifiNetwork ()

Borra la última red Wi-Fi a la que se conectó. Se debe llamar a este método cuando se inicia una nueva invocación para evitar conectarse a la red Wi-Fi que se usó en la prueba anterior después de que se reinicia el dispositivo.

connectToWifiNetwork

public boolean connectToWifiNetwork (Map<String, String> wifiSsidToPsk, 
                boolean scanSsid)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkWithResult(Map,boolean).

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y lo bloquea hasta que se establezca una conexión exitosa con una de las redes Wi-Fi proporcionadas en el mapa wifiSsidToPsk. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsidToPsk Map: Es un mapa de los SSID de Wi-Fi a las contraseñas.

scanSsid boolean: Indica si se deben buscar SSID ocultos para esta red.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetwork

public boolean connectToWifiNetwork (Map<String, String> wifiSsidToPsk)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkWithResult(Map).

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y lo bloquea hasta que se establezca una conexión exitosa con una de las redes Wi-Fi proporcionadas en el mapa wifiSsidToPsk. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsidToPsk Map: Es un mapa de los SSID de Wi-Fi y sus contraseñas.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetwork

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkWithResult(String,String).

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y se bloquea hasta que se establece una conexión correcta a la red Wi-Fi especificada. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsid String: Es el SSID de Wi-Fi al que se conectará.

wifiPsk String: Es la frase de contraseña de la PSK o nula si no está encriptada.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetwork

public boolean connectToWifiNetwork (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkWithResult(String,String,boolean).

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y se bloquea hasta que se establece una conexión correcta a la red Wi-Fi especificada. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsid String: Es el SSID de Wi-Fi al que se conectará.

wifiPsk String: Es la frase de contraseña de la PSK o nula si no está encriptada.

scanSsid boolean: Indica si se debe buscar el SSID oculto de esta red.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetworkIfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkIfNeededWithResult(String,String,boolean).

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

Parámetros
scanSsid boolean: Indica si se debe buscar el SSID oculto de esta red.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeeded

public boolean connectToWifiNetworkIfNeeded (String wifiSsid, 
                String wifiPsk)

Este método dejó de estar disponible.
En su lugar, usa connectToWifiNetworkIfNeededWithResult(String,String).

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

Muestra
boolean true si se conectó correctamente a la red Wi-Fi false de lo contrario

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeededWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

Parámetros
scanSsid boolean: Indica si se debe buscar el SSID oculto de esta red.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkIfNeededWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkIfNeededWithResult (String wifiSsid, 
                String wifiPsk)

Es una variante de connectToWifiNetwork(String,String) que solo se conecta si el dispositivo no tiene conectividad de red en ese momento.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (String wifiSsid, 
                String wifiPsk, 
                boolean scanSsid)

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y se bloquea hasta que se establece una conexión correcta a la red Wi-Fi especificada. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsid String: Es el SSID de Wi-Fi al que se conectará.

wifiPsk String: Es la frase de contraseña de la PSK o nula si no está encriptada.

scanSsid boolean: Indica si se debe buscar el SSID oculto de esta red.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (Map<String, String> wifiSsidToPsk)

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y lo bloquea hasta que se establezca una conexión exitosa con una de las redes Wi-Fi proporcionadas en el mapa wifiSsidToPsk. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsidToPsk Map: Es un mapa de los SSID de Wi-Fi y sus contraseñas.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (Map<String, String> wifiSsidToPsk, 
                boolean scanSsid)

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y lo bloquea hasta que se establezca una conexión exitosa con una de las redes Wi-Fi proporcionadas en el mapa wifiSsidToPsk. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsidToPsk Map: Es un mapa de los SSID de Wi-Fi a las contraseñas.

scanSsid boolean: Indica si se deben buscar SSID ocultos para esta red.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

connectToWifiNetworkWithResult

public abstract IWifiHelper.WifiConnectionResult connectToWifiNetworkWithResult (String wifiSsid, 
                String wifiPsk)

Se conecta a una red Wi-Fi.

Activa el Wi-Fi y se bloquea hasta que se establece una conexión correcta a la red Wi-Fi especificada. Una vez que se establezca una conexión, la instancia intentará restablecerla después de cada reinicio hasta que se llame a ITestDevice.disconnectFromWifi() o ITestDevice.clearLastConnectedWifiNetwork().

Parámetros
wifiSsid String: Es el SSID de Wi-Fi al que se conectará.

wifiPsk String: Es la frase de contraseña de la PSK o nula si no está encriptada.

Muestra
IWifiHelper.WifiConnectionResult El WifiConnectionResult que indica el estado de la conexión.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

createUser

public abstract int createUser (String name)

Crea un usuario con un nombre determinado y marcas predeterminadas 0.

Parámetros
name String: del usuario que se creará en el dispositivo

Muestra
int Es el número entero del ID de usuario creado.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUser

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

Crea un usuario con un nombre determinado y las marcas proporcionadas

Parámetros
name String: del usuario que se creará en el dispositivo

guest boolean: Habilita la marca de usuario --guest durante la creación.

ephemeral boolean: Habilita la marca de usuario --ephemeral durante la creación.

Muestra
int ID del usuario creado

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUser

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

Crea un usuario con un nombre determinado y las marcas proporcionadas

Parámetros
name String: del usuario que se creará en el dispositivo

guest boolean: Habilita la marca de usuario --guest durante la creación.

ephemeral boolean: Habilita la marca de usuario --ephemeral durante la creación.

forTesting boolean: Habilita la marca de prueba --for-testing durante la creación.

Muestra
int ID del usuario creado

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException
IllegalStateException

createUserNoThrow

public abstract int createUserNoThrow (String name)

Crea un usuario con un nombre determinado y marcas predeterminadas 0.

Parámetros
name String: del usuario que se creará en el dispositivo

Muestra
int Es el número entero del ID de usuario creado o -1 si se produjo un error.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

deregisterDeviceActionReceiver

public abstract void deregisterDeviceActionReceiver (IDeviceActionReceiver deviceActionReceiver)

Quita el IDeviceActionReceiver registrado.

Parámetros
deviceActionReceiver IDeviceActionReceiver: Es un IDeviceActionReceiver que se quitará.

disableKeyguard

public abstract void disableKeyguard ()

Intenta inhabilitar el bloqueo de teclado.

Primero, espera a que el envío de entrada esté listo. Esto sucede aproximadamente al mismo tiempo en que el dispositivo informa BOOT_COMPLETE, aparentemente de forma asíncrona, porque la implementación actual del framework tiene una condición de carrera ocasional. Luego, se envía el comando para descartar el bloqueo de teclado (solo funciona en los que no son seguros).

Arroja
DeviceNotAvailableException

disableNetworkMonitor

public abstract boolean disableNetworkMonitor ()

Inhabilita la supervisión de la red en el dispositivo.

Muestra
boolean true si la supervisión se inhabilitó correctamente. false si falló.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

disconnectFromWifi

public abstract boolean disconnectFromWifi ()

Se desconecta de una red Wi-Fi.

Quita todas las redes de la lista de redes conocidas y, luego, inhabilita la conexión Wi-Fi.

Muestra
boolean true si se desconectó correctamente de la red Wi-Fi false si no se pudo desconectar.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

doesFileExist

public abstract boolean doesFileExist (String deviceFilePath, 
                int userId)

Método auxiliar para determinar si existe un archivo en el dispositivo para un usuario determinado.

Parámetros
deviceFilePath String: Es la ruta de acceso absoluta del archivo en el dispositivo que se verificará.

userId int: ID del usuario con el que se verificará la existencia del archivo

Muestra
boolean true si el archivo existe; de lo contrario, false.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

dumpHeap

public abstract File dumpHeap (String process, 
                String devicePath)

Intenta volcar el montón de system_server. Es responsabilidad del llamador limpiar el archivo volcado.

Parámetros
process String: Es el nombre del proceso del dispositivo en el que se realizará el volcado de montón.

devicePath String: Es la ruta de acceso en el dispositivo en la que se colocará el volcado. Debe ser una ubicación donde los permisos lo permitan.

Muestra
File el File que contiene el informe. Es nulo si se produjo un error.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

enableNetworkMonitor

public abstract boolean enableNetworkMonitor ()

Habilita la supervisión de la red en el dispositivo.

Muestra
boolean true si la supervisión se habilitó correctamente. false si falló.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

getActiveApexes

public abstract Set<ITestDevice.ApexInfo> getActiveApexes ()

Recupera la información sobre los APEX activados en el dispositivo.

Muestra
Set<ITestDevice.ApexInfo> Set de ApexInfo que están activados actualmente en el dispositivo

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAllSettings

public abstract Map<String, String> getAllSettings (String namespace)

Devuelve pares clave-valor del espacio de nombres solicitado.

Parámetros
namespace String: Debe ser uno de los siguientes: {"system", "secure", "global"}

Muestra
Map<String, String> Mapa de pares clave-valor. Es nulo si no se admite el espacio de nombres.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAndroidId

public abstract String getAndroidId (int userId)

Busca y devuelve el android-id asociado a un userId. Si no se encuentra, devuelve un valor nulo.

Parámetros
userId int

Muestra
String

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAndroidIds

public abstract Map<Integer, String> getAndroidIds ()

Crea un mapa de los IDs de Android que coinciden con los IDs de usuario. No hay garantía de que cada ID de usuario encuentre un ID de Android asociado en esta función, por lo que algunos IDs de usuario pueden coincidir con nulo.

Muestra
Map<Integer, String> Mapa de los IDs de Android que coinciden con los IDs de usuario.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAppPackageInfo

public abstract PackageInfo getAppPackageInfo (String packageName)

Recupera información sobre un paquete instalado en el dispositivo.

Parámetros
packageName String

Muestra
PackageInfo PackageInfo o null si no se pudo recuperar la información

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getAppPackageInfos

public abstract List<PackageInfo> getAppPackageInfos ()

Recupera información de los paquetes instalados en el dispositivo.

Muestra
List<PackageInfo> List de PackageInfo instaladas en el dispositivo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getBugreport

public abstract InputStreamSource getBugreport ()

Recupera un informe de errores del dispositivo.

Se garantiza que la implementación de esto seguirá funcionando en un dispositivo sin tarjeta SD (o en el que la tarjeta SD aún no esté montada).

Muestra
InputStreamSource Un InputStreamSource que producirá el contenido del informe de errores a pedido. En caso de falla, el InputStreamSource producirá un InputStream vacío.

getBugreportz

public abstract InputStreamSource getBugreportz ()

Recupera un bugreportz del dispositivo. El informe de errores en formato ZIP contiene el informe de errores principal y otros archivos de registro que son útiles para la depuración.

Solo se admite para "adb version" > 1.0.36

Muestra
InputStreamSource Un InputStreamSource del archivo ZIP que contiene el bugreportz. Devuelve nulo en caso de falla.

getCurrentFoldableState

public abstract DeviceFoldableState getCurrentFoldableState ()

Devuelve el estado actual de plegado del dispositivo o un valor nulo si se produjo algún problema.

Muestra
DeviceFoldableState

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getCurrentUser

public abstract int getCurrentUser ()

Devuelve el ID del usuario que se está ejecutando actualmente. En caso de error, devuelve -10000.

Muestra
int

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getFoldableStates

public abstract Set<DeviceFoldableState> getFoldableStates ()

Devuelve la lista de estados de plegado del dispositivo. Se puede obtener con "cmd device_state print-states".

Muestra
Set<DeviceFoldableState>

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getInstalledPackageNames

public abstract Set<String> getInstalledPackageNames ()

Recupera los nombres de los paquetes de aplicaciones presentes en el dispositivo.

Muestra
Set<String> Set de los nombres de paquetes String instalados actualmente en el dispositivo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getIpAddress

public abstract String getIpAddress ()

Obtiene la dirección IP del dispositivo.

Muestra
String La dirección IP del dispositivo o null si el dispositivo no tiene dirección IP

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

getKeyguardState

public abstract KeyguardControllerState getKeyguardState ()

Devuelve un objeto para obtener el estado actual de Keyguard o un valor nulo si no se admite.

Muestra
KeyguardControllerState Un KeyguardControllerState que contiene una instantánea del estado del bloqueo de teclado y devuelve nulo si no se admite la consulta de Keyguard.

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

getMainUserId

public abstract Integer getMainUserId ()

Devuelve el ID del usuario principal.

Muestra
Integer Es el ID del usuario principal, si lo hay, y es nulo si no hay un usuario principal.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceRuntimeException si el resultado del dispositivo no es el esperado.
DeviceNotAvailableException

getMainlineModuleInfo

public abstract Set<String> getMainlineModuleInfo ()

Obtiene información sobre los módulos de la línea principal instalados en el dispositivo.

Muestra
Set<String> Set de los módulos de la línea principal de String que están instalados actualmente en el dispositivo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfRunningUsersSupported

public abstract int getMaxNumberOfRunningUsersSupported ()

Obtiene la cantidad máxima de usuarios que se pueden ejecutar de forma simultánea. La configuración predeterminada es 0.

Muestra
int Es un número entero que indica la cantidad de usuarios que se ejecutan de forma simultánea.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public abstract int getMaxNumberOfUsersSupported (String userType)

Obtiene la cantidad máxima de usuarios admitidos del tipo de usuario determinado. La configuración predeterminada es 0.

Parámetros
userType String: Es el tipo de usuario, como se define en UserManager, por ejemplo, "android.os.usertype.full.SECONDARY".

Muestra
int Es un número entero que indica la cantidad de usuarios admitidos del tipo de usuario determinado.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getMaxNumberOfUsersSupported

public abstract int getMaxNumberOfUsersSupported ()

Este método dejó de estar disponible.
Usa getMaxNumberOfUsersSupported(String userType) para obtener la cantidad máxima de usuarios admitidos para un tipo de usuario determinado.

Obtiene la cantidad máxima de usuarios intercambiables admitidos, sin incluir a los invitados. Después de la versión 36 de la API, no incluye usuarios no intercambiables (como los perfiles). La configuración predeterminada es 0.

Muestra
int Un número entero que indica la cantidad de usuarios intercambiables admitidos

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getOptions

public abstract TestDeviceOptions getOptions ()

Recupera las opciones de prueba para el dispositivo.

Muestra
TestDeviceOptions TestDeviceOptions relacionado con el dispositivo que se está probando.

getPrimaryUserId

public abstract Integer getPrimaryUserId ()

Este método dejó de estar disponible.
getPrimaryUser se dio de baja del servicio UserManager. Usa ERROR(/android.os.UserManager#getMainUserId()) para obtener el primer usuario completo o 0 para el sistema. Ten en cuenta que, para el sistema sin interfaz gráfica, no es un usuario completo.

Devuelve el ID del usuario principal.

Muestra
Integer Es el ID del usuario principal, si lo hay, y es nulo si no hay un usuario principal.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceRuntimeException si el resultado del dispositivo no es el esperado.
DeviceNotAvailableException

getRemainingCreatableUserCount

public abstract int getRemainingCreatableUserCount (String userType)

Devuelve la cantidad de usuarios del tipo de usuario determinado que se pueden crear en este dispositivo.

Parámetros
userType String: Es el tipo de usuario, como se define en UserManager, por ejemplo, "android.os.usertype.full.SECONDARY".

Muestra
int Cuántos usuarios del tipo de usuario determinado se pueden agregar

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (Long displayId, 
                String format, 
                boolean rescale)

Toma una captura de pantalla del dispositivo con el ID de pantalla determinado en el formato admitido. Permite cambiar la escala para admitir tamaños más pequeños

Parámetros
displayId Long: Es el ID de pantalla desde la que se obtendrá la captura de pantalla.

format String: Se admiten PNG y JPEG

rescale boolean: Indica si se debe cambiar la escala de la captura de pantalla para reducir el tamaño de la imagen resultante.

Muestra
InputStreamSource Un InputStreamSource de la captura de pantalla en formato o null si la captura de pantalla no se realizó correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (String format, 
                boolean rescale)

Toma una captura de pantalla del dispositivo. Se recomienda usar getScreenshot(String) en su lugar con codificación JPEG para un tamaño más pequeño.

Parámetros
format String: Se admiten PNG y JPEG

rescale boolean: Indica si se debe cambiar la escala de la captura de pantalla para reducir el tamaño de la imagen resultante.

Muestra
InputStreamSource Un InputStreamSource de la captura de pantalla en formato o null si la captura de pantalla no se realizó correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (String format)

Toma una captura de pantalla del dispositivo. Se recomienda usar getScreenshot(format) con codificación JPEG para un tamaño más pequeño.

Parámetros
format String: Se admiten PNG y JPEG

Muestra
InputStreamSource Un InputStreamSource de la captura de pantalla en formato o null si la captura de pantalla no se realizó correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot (long displayId)

Toma una captura de pantalla del dispositivo con el ID de pantalla determinado. El formato es PNG.

PENDIENTE: Extiende las implementaciones anteriores para admitir "format" y "rescale".

Parámetros
displayId long: Es el ID de pantalla desde la que se obtendrá la captura de pantalla.

Muestra
InputStreamSource Un InputStreamSource de la captura de pantalla en formato o null si la captura de pantalla no se realizó correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getScreenshot

public abstract InputStreamSource getScreenshot ()

Toma una captura de pantalla del dispositivo.

Muestra
InputStreamSource Un InputStreamSource de la captura de pantalla en formato PNG o null si la captura de pantalla no se realizó correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getSetting

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

Devuelve el valor del parámetro de configuración solicitado. El espacio de nombres debe ser uno de los siguientes: {"system", "secure", "global"}

Parámetros
userId int

namespace String

key String

Muestra
String Es el valor asociado con el par namespace:key de un usuario. Es nulo si no se encuentra.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getSetting

public abstract String getSetting (String namespace, 
                String key)

Consulta getSetting(int,String,String) y se realiza en el usuario del sistema.

Parámetros
namespace String

key String

Muestra
String

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUninstallablePackageNames

public abstract Set<String> getUninstallablePackageNames ()

Recupera los nombres de los paquetes de aplicaciones que se pueden desinstalar. Actualmente, se definen como paquetes que no son del sistema y paquetes del sistema actualizados.

Muestra
Set<String> Set de nombres de paquetes String no desinstalables que están instalados actualmente en el dispositivo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserFlags

public abstract int getUserFlags (int userId)

Busca y devuelve las marcas de un usuario determinado. Las marcas se definen en la clase "android.content.pm.UserInfo" del Proyecto de código abierto de Android.

Parámetros
userId int

Muestra
int Son las marcas asociadas al userId proporcionado si se encuentra, o bien -10000 en cualquier otro caso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserInfos

public abstract Map<Integer, UserInfo> getUserInfos ()

Obtiene el mapa de useId a UserInfo en el dispositivo. Se arrojará DeviceRuntimeException si el resultado del dispositivo no es el esperado.

Muestra
Map<Integer, UserInfo> Es la lista de objetos UserInfo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.device.DeviceRuntimeException
DeviceNotAvailableException

getUserSerialNumber

public abstract int getUserSerialNumber (int userId)

Devuelve el número de serie asociado al userId si se encuentra; de lo contrario, devuelve -10000.

Parámetros
userId int

Muestra
int

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

getUserVisibleOnDisplay

public abstract int getUserVisibleOnDisplay (int displayId)

Obtiene el ID del usuario visible en la pantalla determinada.

Parámetros
displayId int: Es el ID de la pantalla.

Muestra
int Es el ID del usuario visible en la pantalla determinada. No diferencia a un usuario en segundo plano visible del usuario en primer plano actual, ya que ambos tipos son visibles. Para diferenciar, compara aún más con el resultado de getCurrentUser().

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

hasFeature

public abstract boolean hasFeature (String feature)

Comprueba si una función está disponible en un dispositivo.

Parámetros
feature String: Qué formato debe ser "feature:" o "" directamente.

Muestra
boolean Es verdadero si se encuentra la función y falso en caso contrario.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

installPackage

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

Instala un paquete de Android en el dispositivo.

Nota: Solo los casos de uso que requieren un control explícito del otorgamiento de permisos de tiempo de ejecución en el momento de la instalación deben llamar a esta función.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

grantPermissions boolean: Indica si se deben otorgar todos los permisos de tiempo de ejecución durante la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

installPackage

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

Instala un paquete de Android en el dispositivo.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

installPackageForUser

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

Instala un paquete de Android en el dispositivo para un usuario determinado.

Nota: Solo los casos de uso que requieren un control explícito del otorgamiento de permisos de tiempo de ejecución en el momento de la instalación deben llamar a esta función.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

grantPermissions boolean: Indica si se deben otorgar todos los permisos de tiempo de ejecución durante la instalación.

userId int: Es el ID de usuario entero para el que se realizará la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

installPackageForUser

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

Instala un paquete de Android en el dispositivo para un usuario determinado.

Parámetros
packageFile File: Es el archivo APK que se instalará.

reinstall boolean: true si se debe realizar una reinstalación

userId int: Es el ID de usuario entero para el que se realizará la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

installPackageWithIncrementalMode

public abstract boolean installPackageWithIncrementalMode (File[] apkFiles, 
                String[] extraArgs, 
                String userId)

Instala APKs con el modo incremental.

Parámetros
apkFiles File: Son los archivos APK que se instalarán.

extraArgs String

userId String

Muestra
boolean

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

installPackages

public String installPackages (List<File> packageFiles, 
                boolean reinstall, 
                String... extraArgs)

Instalar una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) Consulta "https://developer.android.com/studio/build/configure-apk-splits" para obtener información sobre cómo dividir el APK en varios archivos.

Parámetros
packageFiles List: Los archivos APK locales

reinstall boolean: true si se debe realizar una reinstalación

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.
UnsupportedOperationException Si la plataforma del dispositivo no admite permisos de tiempo de ejecución.

installPackages

public String installPackages (List<File> packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) que se encuentran en el dispositivo Android. Consulta "https://developer.android.com/studio/build/configure-apk-splits" para obtener información sobre cómo dividir el APK en varios archivos.

Nota: Solo los casos de uso que requieren un control explícito del otorgamiento de permisos de tiempo de ejecución en el momento de la instalación deben llamar a esta función.

Parámetros
packageFiles List: Rutas de acceso remotas a los archivos APK que se instalarán

reinstall boolean: true si se debe realizar una reinstalación

grantPermissions boolean: Indica si se deben otorgar todos los permisos de tiempo de ejecución durante la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.
UnsupportedOperationException Si la plataforma del dispositivo no admite permisos de tiempo de ejecución.

installPackagesForUser

public String installPackagesForUser (List<File> packageFiles, 
                boolean reinstall, 
                int userId, 
                String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) para un usuario determinado. Consulta "https://developer.android.com/studio/build/configure-apk-splits" para obtener información sobre cómo dividir el APK en varios archivos.

Parámetros
packageFiles List: Los archivos APK locales

reinstall boolean: true si se debe realizar una reinstalación

userId int: Es el ID de usuario entero para el que se realizará la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.
UnsupportedOperationException Si la plataforma del dispositivo no admite permisos de tiempo de ejecución.

installPackagesForUser

public String installPackagesForUser (List<File> packageFiles, 
                boolean reinstall, 
                boolean grantPermissions, 
                int userId, 
                String... extraArgs)

Instala una aplicación para Android compuesta por varios archivos APK (un paquete principal y paquetes divididos adicionales) para un usuario determinado. Consulta "https://developer.android.com/studio/build/configure-apk-splits" para obtener información sobre cómo dividir el APK en varios archivos.

Nota: Solo los casos de uso que requieren un control explícito del otorgamiento de permisos de tiempo de ejecución en el momento de la instalación deben llamar a esta función.

Parámetros
packageFiles List: Los archivos APK locales

reinstall boolean: true si se debe realizar una reinstalación

grantPermissions boolean: Indica si se deben otorgar todos los permisos de tiempo de ejecución durante la instalación.

userId int: Es el ID de usuario entero para el que se realizará la instalación.

extraArgs String: Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm -h" para ver las opciones disponibles.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.
UnsupportedOperationException Si la plataforma del dispositivo no admite permisos de tiempo de ejecución.

isHeadlessSystemUserMode

public abstract boolean isHeadlessSystemUserMode ()

Devuelve si el dispositivo usa el modo de usuario del sistema sin interfaz gráfica.

Muestra
boolean

Arroja
DeviceNotAvailableException

isMainUserPermanentAdmin

public abstract boolean isMainUserPermanentAdmin ()

Devuelve si el usuario principal es administrador permanente y no se puede borrar ni degradar a un estado que no sea de administrador.

Muestra
boolean

Arroja
DeviceNotAvailableException

isMultiUserSupported

public abstract boolean isMultiUserSupported ()

Devuelve si este dispositivo admite varios usuarios intercambiables con su propio acceso y espacio personalizable.

Ten en cuenta que, incluso si es falso, es posible que se admitan varios usuarios, siempre y cuando no se requiera una IU de acceso. Por ejemplo, es posible que se sigan admitiendo perfiles, ya que no requieren una IU de acceso.

También verifica config_enableMultiUserUI. Según la demanda, podemos suponer que los dispositivos para los que esto es cierto están configurados para permitir la adición de usuarios secundarios a través de adb.

Muestra
boolean Indica si el dispositivo admite varios usuarios intercambiables.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isPackageInstalled

public abstract boolean isPackageInstalled (String packageName, 
                String userId)

Consulta el dispositivo para un nombre de paquete y un ID de usuario determinados para verificar si está instalado actualmente para ese usuario.

Parámetros
packageName String: Es el paquete que verificamos si está instalado.

userId String: Es el ID de usuario para el que verificamos si está instalado el paquete. Si es nulo, se usará el usuario principal cero.

Muestra
boolean Es verdadero si se informa que el paquete está instalado. De lo contrario, el valor es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isPackageInstalled

public abstract boolean isPackageInstalled (String packageName)

Consulta el dispositivo para un nombre de paquete determinado y verifica si está instalado actualmente.

Parámetros
packageName String

Muestra
boolean Es verdadero si se informa que el paquete está instalado. De lo contrario, el valor es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserRunning

public abstract boolean isUserRunning (int userId)

Comprueba si un usuario determinado está en ejecución.

Parámetros
userId int

Muestra
boolean Es verdadero si el usuario está corriendo y falso en todos los demás casos.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserSecondary

public abstract boolean isUserSecondary (int userId)

Devuelve si el usuario especificado es un usuario secundario según sus marcas.

Parámetros
userId int

Muestra
boolean Es verdadero si el usuario es secundario; de lo contrario, es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

isUserVisible

public abstract boolean isUserVisible (int userId)

Verifica si el usuario determinado es visible.

Un usuario "visible" es un usuario que interactúa con el usuario "humano" y, por lo tanto, puede iniciar actividades de inicio (por lo general, en la pantalla predeterminada).

Parámetros
userId int

Muestra
boolean

Arroja
DeviceNotAvailableException

isUserVisibleOnDisplay

public abstract boolean isUserVisibleOnDisplay (int userId, 
                int displayId)

Verifica si el usuario determinado es visible en la pantalla determinada.

Un usuario "visible" es un usuario que interactúa con el usuario "humano" y, por lo tanto, puede iniciar actividades de inicio en esa pantalla.

Parámetros
userId int

displayId int

Muestra
boolean

Arroja
DeviceNotAvailableException

isVisibleBackgroundUsersOnDefaultDisplaySupported

public abstract boolean isVisibleBackgroundUsersOnDefaultDisplaySupported ()

Devuelve si el dispositivo permite que los usuarios se inicien de forma visible en segundo plano en ERROR(/java.android.view.Display#DEFAULT_DISPLAY).

Si es así, puedes llamar a startVisibleBackgroundUser(int, int, boolean) y pasarle una pantalla que muestre listDisplayIdsForStartingVisibleBackgroundUsers() (que debería incluir ERROR(/java.android.view.Display#DEFAULT_DISPLAY)).

Muestra
boolean

Arroja
DeviceNotAvailableException

isVisibleBackgroundUsersSupported

public abstract boolean isVisibleBackgroundUsersSupported ()

Devuelve si el dispositivo permite que los usuarios se inicien de forma visible en segundo plano.

Si es así, puedes llamar a startVisibleBackgroundUser(int, int, boolean) y pasar una pantalla que muestre listDisplayIdsForStartingVisibleBackgroundUsers().

Muestra
boolean

Arroja
DeviceNotAvailableException

isWifiEnabled

public abstract boolean isWifiEnabled ()

Prueba si el Wi-Fi está habilitado.

Comprueba si el Wi-Fi está habilitado en el dispositivo. Es útil para confirmar el estado de la conexión Wi-Fi antes de las pruebas que no se deben ejecutar con Wi-Fi, p.ej., las pruebas de datos móviles.

Muestra
boolean true si el Wi-Fi está habilitado. false si está inhabilitado

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

listDisplayIds

public abstract Set<Long> listDisplayIds ()

Recopila la lista de IDs de pantallas disponibles en el dispositivo, según lo indica "dumpsys SurfaceFlinger".

Muestra
Set<Long> Es la lista de pantallas. Default siempre devuelve la pantalla predeterminada 0.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

listDisplayIdsForStartingVisibleBackgroundUsers

public abstract Set<Integer> listDisplayIdsForStartingVisibleBackgroundUsers ()

Obtiene la lista de pantallas que se pueden usar para start a user visible in the background.

Muestra
Set<Integer>

Arroja
DeviceNotAvailableException

listUsers

public abstract ArrayList<Integer> listUsers ()

Obtiene la lista de usuarios del dispositivo. Se arrojará DeviceRuntimeException si el resultado del dispositivo no es el esperado.

Muestra
ArrayList<Integer> Es la lista de IDs de usuarios.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
com.android.tradefed.device.DeviceRuntimeException
DeviceNotAvailableException

logBugreport

public abstract boolean logBugreport (String dataName, 
                ITestLogger listener)

Método auxiliar para tomar un informe de errores y registrarlo en los informes.

Parámetros
dataName String: Es el nombre con el que se informará el informe de errores.

listener ITestLogger: Es un ITestLogger para registrar el informe de errores.

Muestra
boolean Es verdadero si el registro se realizó correctamente y falso en caso contrario.

notifySnapuserd

public void notifySnapuserd (SnapuserdWaitPhase waitPhase)

Notifica al dispositivo que espere a que se complete snapuserd.

Parámetros
waitPhase SnapuserdWaitPhase

registerDeviceActionReceiver

public abstract void registerDeviceActionReceiver (IDeviceActionReceiver deviceActionReceiver)

Registra un IDeviceActionReceiver para este dispositivo.

Todos los IDeviceActionReceivers registrados recibirán una notificación antes de que comience una acción del dispositivo y otra después de que finalice.

Parámetros
deviceActionReceiver IDeviceActionReceiver: Es un IDeviceActionReceiver que se registrará.

removeAdmin

public abstract boolean removeAdmin (String componentName, 
                int userId)

Quita el administrador de dispositivos determinado del usuario determinado y devuelve true si se realiza correctamente o false si no se realiza correctamente.

Parámetros
componentName String: del administrador de dispositivos que se quitará.

userId int: Del usuario en el que reside el administrador del dispositivo.

Muestra
boolean Es verdadero si se ejecuta correctamente; de lo contrario, es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

removeOwners

public abstract void removeOwners ()

Quita todos los propietarios existentes del perfil del dispositivo con el mejor esfuerzo.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

removeUser

public abstract boolean removeUser (int userId)

Quita un usuario determinado del dispositivo.

Parámetros
userId int: del usuario que se quitará

Muestra
boolean Es verdadero si se quitó el usuario correctamente; de lo contrario, es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setDeviceOwner

public abstract boolean setDeviceOwner (String componentName, 
                int userId)

Establece un componente de administrador del dispositivo como propietario del dispositivo en el usuario determinado.

Parámetros
componentName String: del administrador del dispositivo para que sea el propietario del dispositivo.

userId int: del usuario en el que vive el propietario del dispositivo.

Muestra
boolean Es verdadero si se ejecuta correctamente; de lo contrario, es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setSetting

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

Consulta setSetting(int,String,String,String) y se realiza en el usuario del sistema.

Parámetros
namespace String

key String

value String

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

setSetting

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

Agrega un valor de configuración al espacio de nombres de un usuario determinado. Algunos parámetros de configuración solo estarán disponibles después de reiniciar el dispositivo. El espacio de nombres debe ser uno de los siguientes: {"system", "secure", "global"}

Parámetros
userId int

namespace String

key String

value String

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startUser

public abstract boolean startUser (int userId)

Inicia un usuario determinado en segundo plano si está detenido. Si el usuario ya se está ejecutando en segundo plano, este método es una operación nula.

Parámetros
userId int: del usuario que se iniciará en segundo plano

Muestra
boolean Es verdadero si el usuario se inició correctamente en segundo plano.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startUser

public abstract boolean startUser (int userId, 
                boolean waitFlag)

Inicia un usuario determinado en segundo plano si está detenido. Si el usuario ya se está ejecutando en segundo plano, este método es una operación nula. Es posible proporcionar una marca adicional para esperar a que la operación surta efecto.

Parámetros
userId int: del usuario que se iniciará en segundo plano

waitFlag boolean: Hará que el comando espere hasta que se inicie y desbloquee el usuario.

Muestra
boolean Es verdadero si el usuario se inició correctamente en segundo plano.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startVisibleBackgroundUser

public abstract boolean startVisibleBackgroundUser (int userId, 
                int displayId, 
                boolean waitFlag)

Inicia un usuario determinado en segundo plano, visible en la pantalla determinada (es decir, permite que el usuario inicie actividades en esa pantalla).

NOTA: Este comando no verifica si el usuario existe, si la pantalla está disponible, device supports such feature, etcétera.

Parámetros
userId int: del usuario que se iniciará en segundo plano

displayId int: Pantalla en la que se inicia el usuario visible

waitFlag boolean: Hará que el comando espere hasta que se inicie y desbloquee el usuario.

Muestra
boolean true si el usuario se inició correctamente en segundo plano.

Arroja
DeviceNotAvailableException

stopUser

public abstract boolean stopUser (int userId)

Detiene a un usuario determinado. Si el usuario ya se detuvo, este método es una NOOP. No se puede detener al usuario actual ni al usuario del sistema.

Parámetros
userId int: del usuario que se detendrá.

Muestra
boolean Es verdadero si el usuario se detuvo correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

stopUser

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

Detiene a un usuario determinado. Es posible proporcionar marcas adicionales para esperar a que la operación surta efecto y forzar la finalización del usuario. No se puede detener al usuario actual ni al usuario del sistema.

Parámetros
userId int: del usuario que se detendrá.

waitFlag boolean: Hará que el comando espere hasta que se detenga el usuario.

forceFlag boolean: Forzará la detención del usuario.

Muestra
boolean Es verdadero si el usuario se detuvo correctamente.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

switchUser

public abstract boolean switchUser (int userId)

Cambia a otro userId con un tiempo de espera predeterminado. switchUser(int, long).

Parámetros
userId int

Muestra
boolean Es verdadero si el nuevo userId coincide con el proveedor de userId. De lo contrario, el valor es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

switchUser

public abstract boolean switchUser (int userId, 
                long timeout)

Cambia a otro userId con el tiempo de espera proporcionado como fecha límite. Intenta inhabilitar el bloqueo de teclado después de que se realice correctamente el cambio de usuario.

Parámetros
userId int

timeout long: Tiempo de espera antes de devolver el valor falso para el cambio de usuario fallido.

Muestra
boolean Es verdadero si el nuevo userId coincide con el proveedor de userId. De lo contrario, el valor es falso.

Arroja
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

takeBugreport

public abstract Bugreport takeBugreport ()

Toma un informe de errores y lo devuelve dentro de un objeto Bugreport para controlarlo. Devuelve un valor nulo en caso de problemas. El archivo al que se hace referencia en el objeto Bugreport debe limpiarse a través de Bugreport.close().

Muestra
Bugreport

uninstallPackage

public abstract String uninstallPackage (String packageName)

Desinstala un paquete de Android del dispositivo.

Parámetros
packageName String: Es el paquete de Android que se desinstalará.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

uninstallPackageForUser

public abstract String uninstallPackageForUser (String packageName, 
                int userId)

Desinstala un paquete de Android del dispositivo para un usuario determinado.

Parámetros
packageName String: Es el paquete de Android que se desinstalará.

userId int: Es el ID de usuario entero para el que se desinstalará.

Muestra
String String con un código de error o null si la operación se realizó correctamente

Arroja
DeviceNotAvailableException Si se pierde la conexión con el dispositivo y no se puede recuperar.

waitForSnapuserd

public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)

Si es lo esperado, espera a que se complete snapuserd.

Parámetros
currentPhase SnapuserdWaitPhase

Arroja
DeviceNotAvailableException