TestDevice
public
class
TestDevice
extends NativeDevice
Subclases directas conocidas
| ManagedRemoteDevice |
Es un dispositivo que se ejecuta dentro de una máquina virtual que administramos de forma remota a través de una instancia de Tradefed dentro de la VM.
|
| NestedRemoteDevice |
Representación del dispositivo que se ejecuta dentro de una VM de Cuttlefish remota.
|
| RemoteAndroidDevice |
Implementación de un ITestDevice para un dispositivo Android de pila completa conectado a través de adb connect.
|
|
Subcategorías indirectas conocidas
|
Implementación de un ITestDevice para un dispositivo Android de pila completa
Resumen
Constantes |
String |
DISMISS_KEYGUARD_CMD
Comandos que se pueden usar para descartar el bloqueo de teclado.
|
Métodos públicos |
boolean
|
canSwitchToHeadlessSystemUser()
Devuelve si se permite cambiar al usuario SYSTEM sin interfaz gráfica.
|
boolean
|
clearErrorDialogs()
Intenta descartar los diálogos de error que se muestran actualmente en la IU del dispositivo.
|
int
|
createUser(String name)
Crea un usuario con un nombre determinado y marcas predeterminadas 0.
|
int
|
createUser(String name, boolean guest, boolean ephemeral)
Crea un usuario con un nombre determinado y las marcas proporcionadas
|
int
|
createUser(String name, boolean guest, boolean ephemeral, boolean forTesting)
Crea un usuario con un nombre determinado y las marcas proporcionadas
|
int
|
createUserNoThrow(String name)
Crea un usuario con un nombre determinado y marcas predeterminadas 0.
|
void
|
disableKeyguard()
Intenta inhabilitar el bloqueo de teclado.
|
boolean
|
doesFileExist(String deviceFilePath, int userId)
Método de ayuda para determinar si existe un archivo en el dispositivo para un usuario determinado.
|
boolean
|
doesFileExist(String deviceFilePath)
Método auxiliar para determinar si existe un archivo en el dispositivo.
|
File
|
dumpHeap(String process, String devicePath)
Intenta volcar el montón de system_server.
|
|
getActiveApexes()
Recupera la información sobre los APEX activados en el dispositivo.
|
|
getAllSettings(String namespace)
Devuelve pares clave-valor del espacio de nombres solicitado.
|
String
|
getAndroidId(int userId)
Busca y devuelve el android-id asociado a un userId o un valor nulo si no se encuentra.
|
|
getAndroidIds()
Crea un mapa de los IDs de Android que coinciden con los IDs de usuario.
|
PackageInfo
|
getAppPackageInfo(String packageName)
Recupera información sobre un paquete instalado en el dispositivo.
|
|
getAppPackageInfos()
Recupera información de los paquetes instalados en el dispositivo.
|
InputStreamSource
|
getBugreport()
Recupera un informe de errores del dispositivo.
|
InputStreamSource
|
getBugreportz()
Recupera un bugreportz del dispositivo.
|
DeviceFoldableState
|
getCurrentFoldableState()
Devuelve el estado actual de plegado del dispositivo o un valor nulo si se produjo algún problema.
|
int
|
getCurrentUser()
Devuelve el ID del usuario que se está ejecutando actualmente.
|
|
getFoldableStates()
Devuelve la lista de estados de plegado del dispositivo.
|
|
getInstalledPackageNames()
Recupera los nombres de los paquetes de aplicaciones presentes en el dispositivo.
|
KeyguardControllerState
|
getKeyguardState()
Devuelve un objeto para obtener el estado actual de Keyguard o un valor nulo si no se admite.
|
Integer
|
getMainUserId()
Devuelve el ID del usuario principal.
|
|
getMainlineModuleInfo()
Obtiene información sobre los módulos de la línea principal instalados en el dispositivo.
|
int
|
getMaxNumberOfRunningUsersSupported()
Obtiene la cantidad máxima de usuarios que se pueden ejecutar de forma simultánea.
|
int
|
getMaxNumberOfUsersSupported()
Obtiene la cantidad máxima de usuarios admitidos.
|
Integer
|
getPrimaryUserId()
Devuelve el ID de usuario principal.
|
InputStreamSource
|
getScreenshot(String format, boolean rescale)
Toma una captura de pantalla del dispositivo.
|
InputStreamSource
|
getScreenshot(long displayId)
Toma una captura de pantalla del dispositivo con el ID de pantalla determinado.
|
InputStreamSource
|
getScreenshot(String format)
Toma una captura de pantalla del dispositivo.
|
InputStreamSource
|
getScreenshot()
Toma una captura de pantalla del dispositivo.
|
String
|
getSetting(int userId, String namespace, String key)
Devuelve el valor del parámetro de configuración solicitado.
|
String
|
getSetting(String namespace, String key)
Consulta getSetting(int, String, String) y se realiza en el usuario del sistema.
|
|
getUninstallablePackageNames()
Recupera los nombres de los paquetes de aplicaciones que se pueden desinstalar.
|
int
|
getUserFlags(int userId)
Busca y devuelve las marcas de un usuario determinado.
|
|
getUserInfos()
Obtiene el mapa de useId a UserInfo en el dispositivo.
|
int
|
getUserSerialNumber(int userId)
Devuelve el número de serie asociado al userId si se encuentra; de lo contrario, devuelve -10000.
|
boolean
|
hasFeature(String feature)
Comprueba si una función está disponible en un dispositivo.
|
String
|
installPackage(File packageFile, boolean reinstall, String... extraArgs)
Instala un paquete de Android en el dispositivo.
|
String
|
installPackage(File packageFile, File certFile, boolean reinstall, String... extraArgs)
Instala un paquete de Android en el dispositivo.
|
String
|
installPackage(File packageFile, boolean reinstall, boolean grantPermissions, String... extraArgs)
Instala un paquete de Android en el dispositivo.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, int userId, String... extraArgs)
Instala un paquete de Android en el dispositivo para un usuario determinado.
|
String
|
installPackageForUser(File packageFile, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
Instala un paquete de Android en el dispositivo para un usuario determinado.
|
boolean
|
installPackageWithIncrementalMode(File[] apkFiles, String[] extraArgs, String userId)
Instala APKs con el modo incremental.
|
String
|
installPackages( packageFiles, boolean reinstall, String... extraArgs)
|
String
|
installPackages( packageFiles, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, int userId, String... extraArgs)
|
String
|
installPackagesForUser( packageFiles, boolean reinstall, boolean grantPermissions, int userId, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, String... extraArgs)
|
String
|
installRemotePackages( remoteApkPaths, boolean reinstall, boolean grantPermissions, String... extraArgs)
|
boolean
|
isAppEnumerationSupported()
Verifica si la plataforma del dispositivo admite la enumeración de apps
|
boolean
|
isHeadlessSystemUserMode()
Devuelve si el dispositivo usa el modo de usuario del sistema sin interfaz gráfica.
|
boolean
|
isMainUserPermanentAdmin()
Devuelve si el usuario principal es un administrador permanente y no se puede borrar ni degradar a un estado que no sea de administrador.
|
boolean
|
isMultiUserSupported()
Determina si se admite la función de múltiples usuarios.
|
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.
|
boolean
|
isPackageInstalled(String packageName)
Consulta el dispositivo para un nombre de paquete determinado y verifica si está instalado actualmente.
|
boolean
|
isUserRunning(int userId)
Comprueba si un usuario determinado está ejecutando la app.
|
boolean
|
isUserSecondary(int userId)
Devuelve si el usuario especificado es un usuario secundario según sus marcas.
|
boolean
|
isUserVisible(int userId)
Verifica si el usuario determinado es visible.
|
boolean
|
isUserVisibleOnDisplay(int userId, int displayId)
Verifica si el usuario determinado es visible en la pantalla determinada.
|
boolean
|
isVisibleBackgroundUsersOnDefaultDisplaySupported()
Devuelve si el dispositivo permite que los usuarios inicien la visibilidad en segundo plano en ERROR(/java.android.view.Display#DEFAULT_DISPLAY).
|
boolean
|
isVisibleBackgroundUsersSupported()
Devuelve si el dispositivo permite que los usuarios inicien la visibilidad en segundo plano.
|
|
listDisplayIds()
Recopila la lista de IDs de pantallas disponibles en el dispositivo, según lo indica "dumpsys SurfaceFlinger".
|
|
listDisplayIdsForStartingVisibleBackgroundUsers()
Obtiene la lista de pantallas que se pueden usar para start a user visible in the background.
|
|
listUsers()
Obtiene la lista de usuarios del dispositivo.
|
boolean
|
logBugreport(String dataName, ITestLogger listener)
Método auxiliar para tomar un informe de errores y registrarlo para los reporteros.
|
void
|
notifySnapuserd(SnapuserdWaitPhase waitPhase)
|
void
|
postInvocationTearDown(Throwable exception)
Pasos adicionales para la limpieza requerida específica del dispositivo que se ejecutarán después de que se complete la invocación.
|
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.
|
void
|
removeOwners()
Quita todos los propietarios de perfiles de dispositivos existentes con el mejor esfuerzo.
|
boolean
|
removeUser(int userId)
Quita un usuario determinado del dispositivo.
|
boolean
|
setDeviceOwner(String componentName, int userId)
Establece un componente de administrador del dispositivo como propietario del dispositivo en el usuario determinado.
|
void
|
setFirstBootloaderReboot()
|
void
|
setSetting(String namespace, String key, String value)
Consulta setSetting(int, String, String, String) y se realiza en el usuario del sistema.
|
void
|
setSetting(int userId, String namespace, String key, String value)
Agrega un valor de configuración al espacio de nombres de un usuario determinado.
|
void
|
shutdownMicrodroid(ITestDevice microdroidDevice)
Apaga el dispositivo Microdroid, si existe.
|
boolean
|
startUser(int userId)
Inicia un usuario determinado en segundo plano si está detenido.
|
boolean
|
startUser(int userId, boolean waitFlag)
Inicia un usuario determinado en segundo plano si está detenido.
|
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).
|
boolean
|
stopUser(int userId)
Detiene a un usuario determinado.
|
boolean
|
stopUser(int userId, boolean waitFlag, boolean forceFlag)
Detiene a un usuario determinado.
|
boolean
|
supportsMicrodroid()
Verifica las condiciones previas para ejecutar un microdroid.
|
boolean
|
supportsMicrodroid(boolean protectedVm)
Verifica las condiciones previas para ejecutar un microdroid.
|
boolean
|
switchUser(int userId)
Cambia a otro userId con un tiempo de espera predeterminado.
|
boolean
|
switchUser(int userId, long timeout)
Cambia a otro userId con el tiempo de espera proporcionado como fecha límite.
|
Bugreport
|
takeBugreport()
Toma un informe de errores y lo devuelve dentro de un objeto Bugreport para controlarlo.
|
String
|
uninstallPackage(String packageName)
Desinstala un paquete de Android del dispositivo.
|
String
|
uninstallPackageForUser(String packageName, int userId)
Desinstala un paquete de Android del dispositivo para un usuario determinado.
|
void
|
waitForSnapuserd(SnapuserdWaitPhase currentPhase)
|
Constantes
DISMISS_KEYGUARD_CMD
public static final String DISMISS_KEYGUARD_CMD
Comandos que se pueden usar para descartar el bloqueo de teclado.
Valor de la constante:
"input keyevent 82"
Constructores públicos
Métodos públicos
canSwitchToHeadlessSystemUser
public boolean canSwitchToHeadlessSystemUser ()
Devuelve si se permite cambiar al usuario SYSTEM sin interfaz gráfica.
clearErrorDialogs
public 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.
En caso contrario, false. |
createUser
public 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. |
createUser
public 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 del usuario --ephemeral durante la creación. |
| Muestra |
int |
ID del usuario creado |
createUser
public 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 del 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 |
createUserNoThrow
public 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. |
disableKeyguard
public 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 no seguros).
doesFileExist
public boolean doesFileExist (String deviceFilePath,
int userId)
Método de ayuda 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: Es el ID del usuario con el que se verificará la existencia del archivo. |
| Muestra |
boolean |
true si el archivo existe; de lo contrario, false. |
doesFileExist
public boolean doesFileExist (String deviceFilePath)
Método auxiliar para determinar si existe un archivo en el dispositivo.
| Parámetros |
deviceFilePath |
String: Es la ruta de acceso absoluta del archivo en el dispositivo que se verificará. |
| Muestra |
boolean |
true si el archivo existe; de lo contrario, false. |
dumpHeap
public 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 volcará el 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 ERROR(/File) que contiene el informe. Es nulo si se produjo un error. |
getActiveApexes
public getActiveApexes ()
Recupera la información sobre los APEX activados en el dispositivo.
getAllSettings
public getAllSettings (String namespace)
Devuelve pares clave-valor del espacio de nombres solicitado.
| Parámetros |
namespace |
String: Debe ser uno de los siguientes valores: {"system", "secure", "global"} |
| Muestra |
|
Mapa de pares clave-valor. Es nulo si no se admite el espacio de nombres. |
getAndroidId
public String getAndroidId (int userId)
Busca y devuelve el android-id asociado a un userId. Devuelve null si no se encuentra.
getAndroidIds
public 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 nulos.
| Muestra |
|
Mapa de los IDs de Android que coinciden con los IDs de usuario. |
getAppPackageInfo
public PackageInfo getAppPackageInfo (String packageName)
Recupera información sobre un paquete instalado en el dispositivo.
| Parámetros |
packageName |
String |
getAppPackageInfos
public getAppPackageInfos ()
Recupera información de los paquetes instalados en el dispositivo.
getBugreport
public 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).
getBugreportz
public 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
getCurrentFoldableState
public DeviceFoldableState getCurrentFoldableState ()
Devuelve el estado actual de plegado del dispositivo o un valor nulo si se produjo algún problema.
getCurrentUser
public int getCurrentUser ()
Devuelve el ID del usuario que se está ejecutando actualmente. En caso de error, devuelve -10000.
getFoldableStates
public getFoldableStates ()
Devuelve la lista de estados de plegado del dispositivo. Se puede obtener con "cmd device_state
print-states".
getInstalledPackageNames
public getInstalledPackageNames ()
Recupera los nombres de los paquetes de aplicaciones presentes en el dispositivo.
| Muestra |
|
ERROR(/Set) de los nombres de paquete String instalados actualmente en el dispositivo. |
getKeyguardState
public KeyguardControllerState getKeyguardState ()
Devuelve un objeto para obtener el estado actual de Keyguard o un valor nulo si no se admite.
getMainUserId
public 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. |
getMainlineModuleInfo
public getMainlineModuleInfo ()
Obtiene información sobre los módulos de la línea principal instalados en el dispositivo.
| Muestra |
|
ERROR(/Set) de los módulos de la línea principal de String que están instalados actualmente en el dispositivo. |
public 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 ejecutan la aplicación de forma simultánea. |
public int getMaxNumberOfUsersSupported ()
Obtiene la cantidad máxima de usuarios admitidos. La configuración predeterminada es 0.
| Muestra |
int |
Un número entero que indica la cantidad de usuarios admitidos |
getPrimaryUserId
public Integer getPrimaryUserId ()
Devuelve el ID de usuario principal.
| Muestra |
Integer |
Es el ID del usuario principal, si lo hay, y es nulo si no hay un usuario principal. |
getScreenshot
public InputStreamSource getScreenshot (String format,
boolean rescale)
Toma una captura de pantalla del dispositivo. Se recomienda usar getScreenshot(String) 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 el tamaño de la captura de pantalla para reducir el tamaño de la imagen resultante. |
getScreenshot
public 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. |
getScreenshot
public 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 |
getScreenshot
public InputStreamSource getScreenshot ()
Toma una captura de pantalla del dispositivo.
getSetting
public 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. |
getSetting
public 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 |
getUninstallablePackageNames
public 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 |
|
ERROR(/Set) de nombres de paquetes String no desinstalables instalados actualmente en el
dispositivo. |
getUserFlags
public 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.
| Muestra |
int |
Son las marcas asociadas al userId proporcionado si se encuentra, o bien -10000 en cualquier otro caso. |
getUserInfos
public getUserInfos ()
Obtiene el mapa de useId a UserInfo en el dispositivo. Se arrojará DeviceRuntimeException si el resultado del dispositivo no es el esperado.
| Muestra |
|
Es la lista de objetos UserInfo. |
getUserSerialNumber
public int getUserSerialNumber (int userId)
Devuelve el número de serie asociado al userId si se encuentra o -10000 en cualquier otro caso.
hasFeature
public boolean hasFeature (String feature)
Comprueba si una función está disponible en un dispositivo.
| Parámetros |
feature |
String: Indica qué formato debe ser "feature:" o "" directamente. |
| Muestra |
boolean |
Es verdadero si se encuentra la función y falso en caso contrario. |
installPackage
public 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 |
Un String con un código de error o null si la operación se realizó correctamente |
installPackage
public String installPackage (File packageFile,
File certFile,
boolean reinstall,
String... extraArgs)
Instala un paquete de Android en el dispositivo.
Nota: Solo se debe llamar a esta función en los casos de uso que requieran un control explícito del otorgamiento de permisos de tiempo de ejecución durante la instalación.
| Parámetros |
packageFile |
File: Es el archivo APK que se instalará. |
certFile |
File: true si se debe realizar una reinstalación |
reinstall |
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 |
Un String con un código de error o null si la operación se realizó correctamente |
installPackage
public String installPackage (File packageFile,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
Instala un paquete de Android en el dispositivo.
Nota: Solo se debe llamar a esta función en los casos de uso que requieran un control explícito del otorgamiento de permisos de tiempo de ejecución durante la instalació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 |
Un String con un código de error o null si la operación se realizó correctamente |
installPackageForUser
public 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 |
Un String con un código de error o null si la operación se realizó correctamente |
installPackageForUser
public 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 se debe llamar a esta función en los casos de uso que requieran un control explícito del otorgamiento de permisos de tiempo de ejecución durante la instalació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 |
Un String con un código de error o null si la operación se realizó correctamente |
installPackageWithIncrementalMode
public 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 |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
String... extraArgs)
| Parámetros |
packageFiles |
|
reinstall |
boolean |
extraArgs |
String |
installPackages
public String installPackages ( packageFiles,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
| Parámetros |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
int userId,
String... extraArgs)
| Parámetros |
packageFiles |
|
reinstall |
boolean |
userId |
int |
extraArgs |
String |
installPackagesForUser
public String installPackagesForUser ( packageFiles,
boolean reinstall,
boolean grantPermissions,
int userId,
String... extraArgs)
| Parámetros |
packageFiles |
|
reinstall |
boolean |
grantPermissions |
boolean |
userId |
int |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
String... extraArgs)
| Parámetros |
remoteApkPaths |
|
reinstall |
boolean |
extraArgs |
String |
installRemotePackages
public String installRemotePackages ( remoteApkPaths,
boolean reinstall,
boolean grantPermissions,
String... extraArgs)
| Parámetros |
remoteApkPaths |
|
reinstall |
boolean |
grantPermissions |
boolean |
extraArgs |
String |
isAppEnumerationSupported
public boolean isAppEnumerationSupported ()
Verifica si la plataforma del dispositivo admite la enumeración de apps
| Muestra |
boolean |
Es verdadero si se admite la enumeración de apps; de lo contrario, es falso. |
isHeadlessSystemUserMode
public boolean isHeadlessSystemUserMode ()
Devuelve si el dispositivo usa el modo de usuario del sistema sin interfaz gráfica.
isMainUserPermanentAdmin
public boolean isMainUserPermanentAdmin ()
Devuelve si el usuario principal es un administrador permanente y no se puede borrar ni degradar a un estado que no sea de administrador.
isMultiUserSupported
public boolean isMultiUserSupported ()
Determina si se admite la función de múltiples usuarios.
| Muestra |
boolean |
Es verdadero si se admite la función multiusuario; de lo contrario, es falso. |
isPackageInstalled
public 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, es falso. |
isPackageInstalled
public 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, es falso. |
isUserRunning
public boolean isUserRunning (int userId)
Comprueba si un usuario determinado está ejecutando la app.
| Muestra |
boolean |
Es verdadero si el usuario está corriendo y falso en todos los demás casos. |
isUserSecondary
public boolean isUserSecondary (int userId)
Devuelve si el usuario especificado es un usuario secundario según sus marcas.
| Muestra |
boolean |
Es verdadero si el usuario es secundario; de lo contrario, es falso. |
isUserVisible
public 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).
isUserVisibleOnDisplay
public 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 |
listDisplayIds
public listDisplayIds ()
Recopila la lista de IDs de pantallas disponibles en el dispositivo, según lo indica "dumpsys SurfaceFlinger".
| Muestra |
|
Es la lista de pantallas. Default siempre devuelve la pantalla predeterminada 0. |
listDisplayIdsForStartingVisibleBackgroundUsers
public listDisplayIdsForStartingVisibleBackgroundUsers ()
Obtiene la lista de pantallas que se pueden usar para start a user visible in the background.
listUsers
public listUsers ()
Obtiene la lista de usuarios del dispositivo. Se arrojará DeviceRuntimeException si el resultado del dispositivo no es el esperado.
| Muestra |
|
Es la lista de IDs de usuarios. |
logBugreport
public boolean logBugreport (String dataName,
ITestLogger listener)
Método auxiliar para tomar un informe de errores y registrarlo para los reporteros.
| 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)
| Parámetros |
waitPhase |
SnapuserdWaitPhase |
postInvocationTearDown
public void postInvocationTearDown (Throwable exception)
Pasos adicionales para la limpieza requerida específica del dispositivo que se ejecutarán después de que se complete la invocación.
| Parámetros |
exception |
Throwable: Si hay alguna, es la excepción final que se generó por la falla de invocación. |
removeAdmin
public 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. |
removeOwners
public void removeOwners ()
Quita todos los propietarios de perfiles de dispositivos existentes con el mejor esfuerzo.
removeUser
public 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 y falso en caso contrario. |
setDeviceOwner
public 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. |
setFirstBootloaderReboot
public void setFirstBootloaderReboot ()
setSetting
public 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 |
setSetting
public 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 |
shutdownMicrodroid
public void shutdownMicrodroid (ITestDevice microdroidDevice)
Apaga el dispositivo Microdroid, si existe.
| Parámetros |
microdroidDevice |
ITestDevice |
startUser
public 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. |
startUser
public 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. |
startVisibleBackgroundUser
public 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. |
stopUser
public boolean stopUser (int userId)
Detiene a un usuario determinado. Si el usuario ya se detuvo, este método no hace nada.
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. |
stopUser
public 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. |
supportsMicrodroid
public boolean supportsMicrodroid ()
Verifica las condiciones previas para ejecutar un microdroid.
| Muestra |
boolean |
Devuelve verdadero si se cumplen las condiciones previas; de lo contrario, devuelve falso. |
supportsMicrodroid
public boolean supportsMicrodroid (boolean protectedVm)
Verifica las condiciones previas para ejecutar un microdroid.
| Parámetros |
protectedVm |
boolean: Es verdadero si se pretende que Microdroid se ejecute en una VM protegida. |
| Muestra |
boolean |
Devuelve verdadero si se cumplen las condiciones previas; de lo contrario, devuelve falso. |
switchUser
public boolean switchUser (int userId)
Cambia a otro userId con un tiempo de espera predeterminado. switchUser(int, long).
| Muestra |
boolean |
Es verdadero si el nuevo userId coincide con el proveedor de userId. De lo contrario, es falso. |
switchUser
public 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, es falso. |
takeBugreport
public Bugreport takeBugreport ()
Toma un informe de errores y lo devuelve dentro de un objeto Bugreport para controlarlo. Devuelve nulo en caso de problemas. El archivo al que se hace referencia en el objeto Bugreport debe limpiarse a través de Bugreport.close().
uninstallPackage
public 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 |
Un String con un código de error o null si la operación se realizó correctamente |
uninstallPackageForUser
public 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 |
Un String con un código de error o null si la operación se realizó correctamente |
waitForSnapuserd
public void waitForSnapuserd (SnapuserdWaitPhase currentPhase)
| Parámetros |
currentPhase |
SnapuserdWaitPhase |
Métodos protegidos
createParser
protected AaptParser createParser (File appFile)
doAdbReboot
protected void doAdbReboot (NativeDevice.RebootMode rebootMode,
String reason)
Realiza un reinicio con adb.
| Parámetros |
rebootMode |
NativeDevice.RebootMode: Es un modo de este reinicio. |
reason |
String: Para este reinicio. |
getBugreportzInternal
protected File getBugreportzInternal ()
Método interno de ayuda para obtener el archivo ZIP de bugreportz como un ERROR(/File).
getCheckNewUserSleep
protected long getCheckNewUserSleep ()
Se expone para pruebas.
getHostCurrentTime
protected long getHostCurrentTime ()
Expuesto para pruebas
prePostBootSetup
protected void prePostBootSetup ()
Permite que cada tipo de dispositivo (AndroidNativeDevice, TestDevice) anule este método para una configuración específica posterior al inicio.