DeviceImpl

public final class DeviceImpl
extends Object implements IDevice

java.lang.Object
   ↳ com.android.tradefed.device.server.DeviceImpl


Es un dispositivo. Puede ser un dispositivo físico o un emulador.

Resumen

Constructores públicos

DeviceImpl(ClientTracker clientTracer, String serialNumber, IDevice.DeviceState deviceState)

Métodos públicos

boolean arePropertiesSet()

Devuelve true si las propiedades se almacenaron en caché.

void createForward(int localPort, String remoteSocketName, IDevice.DeviceUnixSocketNamespace namespace)

Crea un reenvío de puertos entre un puerto TCP local y un socket de dominio Unix remoto.

void createForward(int localPort, int remotePort)

Crea un reenvío de puertos entre un puerto local y uno remoto.

void createReverse(int remotePort, int localPort)

Crea una inversión de puertos entre un puerto remoto y uno local.

void executeBinderCommand(String[] parameters, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, InputStream is)

Ejecuta un comando de Binder en el dispositivo y envía el resultado a un receiver

Esto usa la llamada exec:cmd o abb_exec: más rápida si el SO del dispositivo y el servidor ADB del host admiten la función de ejecución de Android Binder Bridge.

void executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver.

void executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, InputStream is)

Es una versión del comando executeShell que puede tomar un flujo de entrada para enviar a través de stdin.

void executeShellCommand(String command, IShellOutputReceiver receiver)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver

Esto es similar a llamar a executeShellCommand(command, receiver, DdmPreferences.getTimeOut()).

void executeShellCommand(String command, IShellOutputReceiver receiver, int maxTimeToOutputResponse)
void executeShellCommand(String command, IShellOutputReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver.

void forceStop(String applicationName)

Fuerza la detención de una aplicación por su nombre.

getAbis()

Devuelve las ABI que admite este dispositivo.

ListenableFuture<AvdData> getAvdData()

Devuelve información sobre el AVD que ejecuta el emulador.

String getAvdName()

Devuelve el nombre del AVD en el que se ejecuta el emulador.

String getAvdPath()

Devuelve la ruta de acceso absoluta al dispositivo virtual en el sistema de archivos.

getBattery(long freshnessTime, TimeUnit timeUnit)

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

getBattery()

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Integer getBatteryLevel(long freshnessMs)

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Integer getBatteryLevel()

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

ClientImpl getClient(String applicationName)

Devuelve un Client por el nombre de la aplicación.

String getClientName(int pid)

Devuelve el nombre del cliente por PID o null si el PID es desconocido.

ClientTracker getClientTracker()
ClientImpl[] getClients()

Devuelve el array de clientes.

int getDensity()

Devuelve el bucket de densidad de la pantalla del dispositivo leyendo el valor de la propiedad del sistema PROP_DEVICE_DENSITY.

FileListingService getFileListingService()

Devuelve un FileListingService para este dispositivo.

String getLanguage()

Devuelve el idioma del usuario.

InstallMetrics getLastInstallMetrics()

Obtiene la información sobre la instalación más reciente en este dispositivo.

String getMountPoint(String name)

Devuelve un punto de activación.

String getName()

Devuelve un nombre (humanizado) para este dispositivo.

ClientImpl[] getNativeClients()
ClientImpl getNativeClients(String applicationName)
ProfileableClientImpl[] getProfileableClients()

Devuelve el array de clientes aptos para la creación de perfiles.

getProperties()

Devuelve las propiedades del dispositivo almacenadas en caché.

String getProperty(String name)

Método de conveniencia que intenta recuperar una propiedad a través de IShellEnabledDevice.getSystemProperty(String) con un tiempo de espera muy corto y omite las excepciones.

String getPropertyCacheOrSync(String name)

Combinación de getProperty(String) y getPropertySync(String) que intentará recuperar la propiedad de la caché.

int getPropertyCount()

Devuelve la cantidad de propiedades de este dispositivo.

String getPropertySync(String name)

Es una variante de getProperty(String) que intentará recuperar la propiedad determinada directamente del dispositivo, sin usar la caché.

String getRegion()

Devuelve la región del usuario.

static String getScreenRecorderCommand(String remoteFilePath, ScreenRecorderOptions options)
RawImage getScreenshot()

Toma una captura de pantalla del dispositivo y la devuelve como un objeto RawImage.

RawImage getScreenshot(long timeout, TimeUnit unit)
String getSerialNumber()

Devuelve el número de serie del dispositivo.

IDevice.DeviceState getState()

Devuelve el estado del dispositivo.

SyncService getSyncService()

Devuelve un objeto SyncService para transferir archivos al dispositivo y desde este.

ListenableFuture<String> getSystemProperty(String name)

Realiza una posible consulta asíncrona para una propiedad del sistema.

boolean hasClients()

Devuelve si el IDevice tiene Clients.

void installPackage(String packageFilePath, boolean reinstall, InstallReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, String... extraArgs)

Instala una aplicación para Android en el dispositivo.

void installPackage(String packageFilePath, boolean reinstall, InstallReceiver receiver, String... extraArgs)

Instala una aplicación para Android en el dispositivo.

void installPackage(String packageFilePath, boolean reinstall, String... extraArgs)

Instala una aplicación para Android en el dispositivo.

void installPackages( apks, boolean reinstall, installOptions)

Instala una aplicación para Android compuesta por varios archivos APK (uno principal y de 0 a n paquetes divididos) con el tiempo de espera predeterminado.

void installPackages( apks, boolean reinstall, installOptions, long timeout, TimeUnit timeoutUnit)

Instala una aplicación para Android compuesta por varios archivos APK (uno principal y de 0 a n paquetes divididos).

void installRemotePackage(String remoteFilePath, boolean reinstall, InstallReceiver receiver, String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

void installRemotePackage(String remoteFilePath, boolean reinstall, String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

void installRemotePackage(String remoteFilePath, boolean reinstall, InstallReceiver receiver, long maxTimeout, long maxTimeToOutputResponse, TimeUnit maxTimeUnits, String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

void installRemotePackages( remoteApks, boolean reinstall, installOptions)

Instala una aplicación para Android compuesta por varios archivos APK que se encuentran de forma local en el dispositivo con el tiempo de espera predeterminado.

void installRemotePackages( remoteApks, boolean reinstall, installOptions, long timeout, TimeUnit timeoutUnit)

Instala una aplicación para Android compuesta por varios archivos APK que se encuentran de forma local en el dispositivo.

boolean isBootLoader()

Devuelve si el dispositivo está en modo de bootloader.

boolean isEmulator()

Devuelve true si el dispositivo es un emulador.

boolean isOffline()

Devuelve si el dispositivo no tiene conexión.

boolean isOnline()

Devuelve si el dispositivo está listo.

boolean isRoot()

Consulta el estado de raíz actual del dispositivo.

void kill(String applicationName)

Cierra una aplicación por su nombre.

void pullFile(String remote, String local)

Extrae un solo archivo.

void push(String[] local, String remote)

Envía varios archivos o directorios.

void pushFile(String local, String remote)

Envía un solo archivo.

SocketChannel rawBinder(String service, String[] parameters)

Invoca el servicio de Android Binder Bridge en un dispositivo remoto.

SocketChannel rawExec(String executable, String[] parameters)

Invoca el servicio host:exec en un dispositivo remoto.

void reboot(String into)

Reinicia el dispositivo.

void removeForward(int localPort)

Quita un reenvío de puerto entre un puerto local y uno remoto.

void removeRemotePackage(String remoteFilePath)

Quita un archivo del dispositivo.

void removeReverse(int remotePort)

Quita la inversión de puertos entre un puerto remoto y uno local.

boolean root()

Solicita al daemon de adb que se convierta en raíz en el dispositivo.

void startScreenRecorder(String remoteFilePath, ScreenRecorderOptions options, IShellOutputReceiver receiver)

Inicia la grabación de pantalla en el dispositivo si este admite IDevice.Feature.SCREEN_RECORD.

boolean supportsFeature(IDevice.HardwareFeature feature)

Devuelve si este dispositivo admite la función de hardware determinada.

boolean supportsFeature(IDevice.Feature feature)

Devuelve un valor que indica si este dispositivo admite la función de software determinada.

String syncPackageToDevice(String localFilePath)

Envía un archivo al dispositivo

String toString()
String uninstallApp(String applicationID, String... extraArgs)

Desinstala una app del dispositivo.

String uninstallPackage(String packageName)

Desinstala un paquete del dispositivo.

Constructores públicos

DeviceImpl

public DeviceImpl (ClientTracker clientTracer, 
                String serialNumber, 
                IDevice.DeviceState deviceState)

Parámetros
clientTracer ClientTracker

serialNumber String

deviceState IDevice.DeviceState

Métodos públicos

arePropertiesSet

public boolean arePropertiesSet ()

Devuelve true si las propiedades se almacenaron en caché.

Muestra
boolean

createForward

public void createForward (int localPort, 
                String remoteSocketName, 
                IDevice.DeviceUnixSocketNamespace namespace)

Crea un reenvío de puertos entre un puerto TCP local y un socket de dominio Unix remoto.

Parámetros
localPort int: Es el puerto local que se reenvía.

remoteSocketName String: Nombre del socket de dominio de Unix creado en el dispositivo

namespace IDevice.DeviceUnixSocketNamespace: Es el espacio de nombres en el que se creó el socket de dominio de Unix.

Arroja
AdbCommandRejectedException
TimeoutException

createForward

public void createForward (int localPort, 
                int remotePort)

Crea un reenvío de puertos entre un puerto local y uno remoto.

Parámetros
localPort int: Es el puerto local que se reenvía.

remotePort int: Es el puerto remoto.

Arroja
AdbCommandRejectedException
TimeoutException

createReverse

public void createReverse (int remotePort, 
                int localPort)

Crea una inversión de puertos entre un puerto remoto y uno local.

Parámetros
remotePort int: Es el puerto remoto que se debe invertir.

localPort int: el puerto local

Arroja
AdbCommandRejectedException
TimeoutException

executeBinderCommand

public void executeBinderCommand (String[] parameters, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                InputStream is)

Ejecuta un comando de Binder en el dispositivo y envía el resultado a un receiver

Esto usa la llamada exec:cmd o abb_exec: más rápida si tanto el SO del dispositivo como el servidor ADB del host admiten la función de ejecución de Android Binder Bridge.

Parámetros
parameters String: Es el comando del binder que se ejecutará.

receiver IShellOutputReceiver: El IShellOutputReceiver que recibirá el resultado del comando del vinculador

maxTimeToOutputResponse long

maxTimeUnits TimeUnit

is InputStream: Es un flujo de entrada opcional para enviar a través de stdin.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver.

maxTimeToOutputResponse se usa como tiempo de espera máximo cuando se espera el resultado del comando del dispositivo.
En cualquier momento, si el comando de shell no genera ningún resultado durante un período superior a maxTimeToOutputResponse, el método arrojará ShellCommandUnresponsiveException.

Para comandos como la salida de registro, se debe usar un valor de maxTimeToOutputResponse de 0, lo que significa que el método nunca arrojará una excepción y se bloqueará hasta que el IShellOutputReceiver.isCancelled() del receptor devuelva true.

Parámetros
command String: Es el comando de shell que se ejecutará.

receiver IShellOutputReceiver: Es el IShellOutputReceiver que recibirá el resultado del comando de shell.

maxTimeToOutputResponse long: Es la cantidad máxima de tiempo durante la cual el comando puede no generar ninguna respuesta. Un valor de 0 significa que el método esperará indefinidamente (hasta que receiver cancele la ejecución) la salida del comando y nunca arrojará una excepción.

maxTimeUnits TimeUnit: Son las unidades para los valores de maxTimeToOutputResponse distintos de cero.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                InputStream is)

Es una versión del comando executeShell que puede tomar un flujo de entrada para enviar a través de stdin.

Parámetros
command String

receiver IShellOutputReceiver

maxTimeToOutputResponse long

maxTimeUnits TimeUnit

is InputStream

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver

Esto es similar a llamar a executeShellCommand(command, receiver, DdmPreferences.getTimeOut()).

Parámetros
command String: Es el comando de shell que se ejecutará.

receiver IShellOutputReceiver: Es el IShellOutputReceiver que recibirá el resultado del comando de shell.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                int maxTimeToOutputResponse)

Parámetros
command String

receiver IShellOutputReceiver

maxTimeToOutputResponse int

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

executeShellCommand

public void executeShellCommand (String command, 
                IShellOutputReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits)

Ejecuta un comando shell en el dispositivo y envía el resultado a un receiver.

maxTimeToOutputResponse se usa como tiempo de espera máximo cuando se espera el resultado del comando del dispositivo.
En cualquier momento, si el comando de shell no genera ningún resultado durante un período superior a maxTimeToOutputResponse, el método arrojará ShellCommandUnresponsiveException.

Para comandos como la salida de registro, se debe usar un valor de maxTimeToOutputResponse de 0, lo que significa que el método nunca arrojará una excepción y se bloqueará hasta que el IShellOutputReceiver.isCancelled() del receptor devuelva true.

Parámetros
command String: Es el comando de shell que se ejecutará.

receiver IShellOutputReceiver: Es el IShellOutputReceiver que recibirá el resultado del comando de shell.

maxTimeout long: Es el tiempo de espera máximo para que se muestre el comando. Un valor de 0 significa que no se aplicará un tiempo de espera máximo.

maxTimeToOutputResponse long: Es la cantidad máxima de tiempo durante la cual el comando puede no generar ninguna respuesta. Un valor de 0 significa que el método esperará indefinidamente (hasta que receiver cancele la ejecución) la salida del comando y nunca arrojará una excepción.

maxTimeUnits TimeUnit: Unidades para los valores maxTimeout y maxTimeToOutputResponse distintos de cero.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

forceStop

public void forceStop (String applicationName)

Fuerza la detención de una aplicación por su nombre. Esto quita todas las alarmas pendientes y los cálculos en cola.

Parámetros
applicationName String: El nombre de la aplicación

getAbis

public  getAbis ()

Devuelve las ABI que admite este dispositivo. Los ABIs se ordenan según la preferencia, y el primer ABI es el más preferido.

Muestra
La lista de ABIs.

getAvdData

public ListenableFuture<AvdData> getAvdData ()

Devuelve información sobre el AVD que ejecuta el emulador.

AvdData.getName es el nombre del AVD o null si no hay ninguno.

AvdData.getPath es la ruta de acceso del AVD o null si se trata de un dispositivo físico, si falló el subcomando de la consola del emulador o si la versión del emulador es anterior a la 30.0.18.

Muestra
ListenableFuture<AvdData> El AvdData del dispositivo

getAvdName

public String getAvdName ()

Devuelve el nombre del AVD en el que se ejecuta el emulador.

Esto solo es válido si isEmulator() devuelve verdadero.

Si el emulador no ejecuta ningún AVD (por ejemplo, si se ejecuta desde una compilación de árbol de código fuente de Android), este método devolverá "<build>".

Nota: Se recomienda usar getAvdData() si deseas controlar el tiempo de espera.

Muestra
String El nombre del AVD o null si no hay ninguno.

getAvdPath

public String getAvdPath ()

Devuelve la ruta de acceso absoluta al dispositivo virtual en el sistema de archivos. La ruta depende del sistema operativo; tendrá separadores de nombre / en Linux y separadores \ en Windows.

Nota: Se recomienda usar getAvdData() si deseas controlar el tiempo de espera.

Muestra
String La ruta de acceso del AVD o null si se trata de un dispositivo físico, si falló el subcomando de la consola del emulador o si la versión del emulador es anterior a la 30.0.18

getBattery

public  getBattery (long freshnessTime, 
                TimeUnit timeUnit)

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Es posible que el nivel de batería se almacene en caché. Solo consulta el nivel de batería del dispositivo si freshnessTime venció desde la última consulta exitosa.

Parámetros
freshnessTime long: Es la antigüedad deseada del nivel de batería.

timeUnit TimeUnit: Es el ERROR(/TimeUnit) de freshnessTime.

Muestra
Un ERROR(/Future) que se puede usar para consultar el nivel de batería. El objeto Future devolverá un ERROR(/ExecutionException) si no se pudo recuperar el nivel de batería.

getBattery

public  getBattery ()

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Es posible que el nivel de batería se almacene en caché. Solo consulta el nivel de batería del dispositivo si transcurrieron 5 minutos desde la última consulta exitosa.

Muestra
un ERROR(/Future) que se puede usar para consultar el nivel de batería. El objeto Future devolverá un ERROR(/ExecutionException) si no se pudo recuperar el nivel de batería.

getBatteryLevel

public Integer getBatteryLevel (long freshnessMs)

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Es posible que el nivel de batería se almacene en caché. Solo consulta el nivel de batería del dispositivo si transcurrieron freshnessMs ms desde la última consulta exitosa.

Muestra
Integer El nivel de batería o null si no se pudo recuperar

getBatteryLevel

public Integer getBatteryLevel ()

Devuelve el nivel de batería del dispositivo, de 0 a 100 por ciento.

Es posible que el nivel de batería se almacene en caché. Solo consulta el nivel de batería del dispositivo si transcurrieron 5 minutos desde la última consulta exitosa.

Muestra
Integer El nivel de batería o null si no se pudo recuperar

getClient

public ClientImpl getClient (String applicationName)

Devuelve un Client por el nombre de la aplicación.

Parámetros
applicationName String: El nombre de la aplicación

Muestra
ClientImpl El objeto Client o null si no se encontró ninguna coincidencia.

getClientName

public String getClientName (int pid)

Devuelve el nombre del cliente por PID o null si el PID es desconocido.

Parámetros
pid int: Es el PID del cliente.

Muestra
String

getClientTracker

public ClientTracker getClientTracker ()

Muestra
ClientTracker

getClients

public ClientImpl[] getClients ()

Devuelve el array de clientes.

Muestra
ClientImpl[]

getDensity

public int getDensity ()

Devuelve el bucket de densidad de la pantalla del dispositivo leyendo el valor de la propiedad del sistema PROP_DEVICE_DENSITY.

Muestra
int La densidad, o -1 si no se puede determinar.

getFileListingService

public FileListingService getFileListingService ()

Devuelve un FileListingService para este dispositivo.

Muestra
FileListingService

getLanguage

public String getLanguage ()

Devuelve el idioma del usuario.

Muestra
String Idioma del usuario o nulo si se desconoce

getLastInstallMetrics

public InstallMetrics getLastInstallMetrics ()

Obtiene la información sobre la instalación más reciente en este dispositivo.

Muestra
InstallMetrics Métricas de InstallMetrics que describen la instalación.

getMountPoint

public String getMountPoint (String name)

Devuelve un punto de activación.

Parámetros
name String: Es el nombre del punto de montaje que se devolverá.

Muestra
String

getName

public String getName ()

Devuelve un nombre (humanizado) para este dispositivo. Por lo general, este es el nombre del AVD para los AVD y una combinación del nombre del fabricante, el nombre del modelo y el número de serie para los dispositivos.

Muestra
String

getNativeClients

public ClientImpl[] getNativeClients ()

Muestra
ClientImpl[]

getNativeClients

public ClientImpl getNativeClients (String applicationName)

Parámetros
applicationName String

Muestra
ClientImpl

getProfileableClients

public ProfileableClientImpl[] getProfileableClients ()

Devuelve el array de clientes aptos para la creación de perfiles.

Muestra
ProfileableClientImpl[]

getProperties

public  getProperties ()

Devuelve las propiedades del dispositivo almacenadas en caché. Contiene toda la salida de "getprop".

Muestra

getProperty

public String getProperty (String name)

Método de conveniencia que intenta recuperar una propiedad a través de IShellEnabledDevice.getSystemProperty(String) con un tiempo de espera muy corto y omite las excepciones.

Nota: Se recomienda usar IShellEnabledDevice.getSystemProperty(String) si deseas controlar el tiempo de espera.

Parámetros
name String: Es el nombre del valor que se devolverá.

Muestra
String El valor o null si el valor de la propiedad no estaba disponible de inmediato

getPropertyCacheOrSync

public String getPropertyCacheOrSync (String name)

Combinación de getProperty(String) y getPropertySync(String) que intentará recuperar la propiedad de la caché. Si no se encuentra, intentará de forma síncrona consultar el dispositivo directamente y volverá a completar la caché si tiene éxito.

Parámetros
name String: Es el nombre del valor que se devolverá.

Muestra
String El valor o null si la propiedad no existe

getPropertyCount

public int getPropertyCount ()

Devuelve la cantidad de propiedades de este dispositivo.

Muestra
int

getPropertySync

public String getPropertySync (String name)

Es una variante de getProperty(String) que intentará recuperar la propiedad determinada directamente del dispositivo, sin usar la caché. Este método solo se debe usar para las propiedades volátiles.

Parámetros
name String: Es el nombre del valor que se devolverá.

Muestra
String El valor o null si la propiedad no existe

getRegion

public String getRegion ()

Devuelve la región del usuario.

Muestra
String La región del usuario o null si se desconoce

getScreenRecorderCommand

public static String getScreenRecorderCommand (String remoteFilePath, 
                ScreenRecorderOptions options)

Parámetros
remoteFilePath String

options ScreenRecorderOptions

Muestra
String

getScreenshot

public RawImage getScreenshot ()

Toma una captura de pantalla del dispositivo y la devuelve como un objeto RawImage.

Muestra
RawImage La captura de pantalla como RawImage o null si algo salió mal

Arroja
AdbCommandRejectedException
TimeoutException

getScreenshot

public RawImage getScreenshot (long timeout, 
                TimeUnit unit)

Parámetros
timeout long

unit TimeUnit

Muestra
RawImage

Arroja
AdbCommandRejectedException
TimeoutException

getSerialNumber

public String getSerialNumber ()

Devuelve el número de serie del dispositivo.

Muestra
String

getState

public IDevice.DeviceState getState ()

Devuelve el estado del dispositivo.

Muestra
IDevice.DeviceState

getSyncService

public SyncService getSyncService ()

Devuelve un objeto SyncService para enviar o extraer archivos desde el dispositivo.

Muestra
SyncService null si no se pudo crear el SyncService. Esto puede ocurrir si adb se niega a abrir la conexión porque IDevice no es válido (o se desconectó).

Arroja
AdbCommandRejectedException
TimeoutException

getSystemProperty

public ListenableFuture<String> getSystemProperty (String name)

Realiza una posible consulta asíncrona para una propiedad del sistema.

Parámetros
name String: Es el nombre del valor que se devolverá.

Muestra
ListenableFuture<String> un ListenableFuture. ERROR(get/Future#get() get) puede devolver un valor nulo.

hasClients

public boolean hasClients ()

Devuelve si el IDevice tiene Clients.

Muestra
boolean

installPackage

public void installPackage (String packageFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                String... extraArgs)

Instala una aplicación para Android en el dispositivo. Este es un método auxiliar que combina los pasos de syncPackageToDevice, installRemotePackage y removePackage.

Parámetros
packageFilePath String: Es la ruta de acceso absoluta del sistema de archivos al archivo del host local que se instalará.

reinstall boolean: Se establece en true si se debe reinstalar la app.

receiver InstallReceiver: Es el InstallReceiver que se usará para supervisar la instalación y obtener el estado final.

maxTimeout long: Es el tiempo de espera máximo para que se muestre el comando. Un valor de 0 significa que no se aplicará un tiempo de espera máximo.

maxTimeToOutputResponse long: Es la cantidad máxima de tiempo durante la cual el comando puede no generar ninguna respuesta. Un valor de 0 significa que el método esperará indefinidamente (hasta que receiver cancele la ejecución) la salida del comando y nunca arrojará una excepción.

maxTimeUnits TimeUnit: Unidades para los valores maxTimeout y maxTimeToOutputResponse distintos de cero.

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

Arroja
InstallException

installPackage

public void installPackage (String packageFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                String... extraArgs)

Instala una aplicación para Android en el dispositivo. Este es un método auxiliar que combina los pasos de syncPackageToDevice, installRemotePackage y removePackage.

Parámetros
packageFilePath String: Es la ruta de acceso absoluta del sistema de archivos al archivo del host local que se instalará.

reinstall boolean: Se establece en true si se debe reinstalar la app.

receiver InstallReceiver: Es el InstallReceiver que se usará para supervisar la instalación y obtener el estado final.

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

Arroja
InstallException

installPackage

public void installPackage (String packageFilePath, 
                boolean reinstall, 
                String... extraArgs)

Instala una aplicación para Android en el dispositivo. Este es un método auxiliar que combina los pasos de syncPackageToDevice, installRemotePackage y removePackage.

Parámetros
packageFilePath String: Es la ruta de acceso absoluta del sistema de archivos al archivo del host local que se instalará.

reinstall boolean: Se establece en true si se debe reinstalar la app.

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

Arroja
InstallException

installPackages

public void installPackages ( apks, 
                boolean reinstall, 
                 installOptions)

Instala una aplicación para Android compuesta por varios archivos APK (uno principal y de 0 a n paquetes divididos) con el tiempo de espera predeterminado.

Parámetros
apks : Lista de APKs para instalar (1 APK principal y de 0 a n APKs divididos)

reinstall boolean: Se establece en true si se debe reinstalar la app.

installOptions : Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm install --help" para ver las opciones disponibles.

Arroja
InstallException

installPackages

public void installPackages ( apks, 
                boolean reinstall, 
                 installOptions, 
                long timeout, 
                TimeUnit timeoutUnit)

Instala una aplicación para Android compuesta por varios archivos APK (uno principal y de 0 a n paquetes divididos).

Parámetros
apks : Lista de APKs para instalar (1 APK principal y de 0 a n APKs divididos)

reinstall boolean: Se establece en true si se debe reinstalar la app.

installOptions : Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm install --help" para ver las opciones disponibles.

timeout long: Se agotó el tiempo de espera de la instalación

timeoutUnit TimeUnit: ERROR(/TimeUnit) correspondiente al parámetro de tiempo de espera

Arroja
InstallException

installRemotePackage

public void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

Parámetros
remoteFilePath String: Ruta de acceso absoluta al archivo del paquete en el dispositivo

reinstall boolean: Se establece en true si se debe reinstalar la app.

receiver InstallReceiver: Es el InstallReceiver que se usará para supervisar la instalación y obtener el estado final.

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

Arroja
InstallException

installRemotePackage

public void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

Parámetros
remoteFilePath String: Ruta de acceso absoluta al archivo del paquete en el dispositivo

reinstall boolean: Se establece en true si se debe reinstalar la app.

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

Arroja
InstallException

installRemotePackage

public void installRemotePackage (String remoteFilePath, 
                boolean reinstall, 
                InstallReceiver receiver, 
                long maxTimeout, 
                long maxTimeToOutputResponse, 
                TimeUnit maxTimeUnits, 
                String... extraArgs)

Instala el paquete de aplicación que se envió a una ubicación temporal en el dispositivo.

Parámetros
remoteFilePath String: Ruta de acceso absoluta al archivo del paquete en el dispositivo

reinstall boolean: Se establece en true si se debe reinstalar la app.

receiver InstallReceiver: Es el InstallReceiver que se usará para supervisar la instalación y obtener el estado final.

maxTimeout long: Es el tiempo de espera máximo para que se muestre el comando. Un valor de 0 significa que no se aplicará un tiempo de espera máximo.

maxTimeToOutputResponse long: Es la cantidad máxima de tiempo durante la cual el comando puede no generar ninguna respuesta. Un valor de 0 significa que el método esperará indefinidamente (hasta que receiver cancele la ejecución) la salida del comando y nunca arrojará una excepción.

maxTimeUnits TimeUnit: Unidades para los valores maxTimeout y maxTimeToOutputResponse distintos de cero.

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

Arroja
InstallException

installRemotePackages

public void installRemotePackages ( remoteApks, 
                boolean reinstall, 
                 installOptions)

Instala una aplicación para Android compuesta por varios archivos APK que se encuentran de forma local en el dispositivo con el tiempo de espera predeterminado.

Parámetros
remoteApks : Es la lista de rutas de acceso a los archivos APK en el dispositivo que se instalarán.

reinstall boolean: Se establece en true si se debe reinstalar la app.

installOptions : Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm install --help" para ver las opciones disponibles.

Arroja
InstallException

installRemotePackages

public void installRemotePackages ( remoteApks, 
                boolean reinstall, 
                 installOptions, 
                long timeout, 
                TimeUnit timeoutUnit)

Instala una aplicación para Android compuesta por varios archivos APK que se encuentran de forma local en el dispositivo.

Parámetros
remoteApks : Es la lista de rutas de acceso a archivos APK que se encuentran en el dispositivo para instalar.

reinstall boolean: Se establece en true si se debe reinstalar la app.

installOptions : Son argumentos adicionales opcionales que se pueden pasar. Consulta "adb shell pm install --help" para ver las opciones disponibles.

timeout long: Se agotó el tiempo de espera de la instalación

timeoutUnit TimeUnit: ERROR(/TimeUnit) correspondiente al parámetro de tiempo de espera

Arroja
InstallException

isBootLoader

public boolean isBootLoader ()

Devuelve si el dispositivo está en modo de bootloader.

Muestra
boolean true si getState() devuelve DeviceState.BOOTLOADER.

isEmulator

public boolean isEmulator ()

Devuelve true si el dispositivo es un emulador.

Muestra
boolean

isOffline

public boolean isOffline ()

Devuelve si el dispositivo no tiene conexión.

Muestra
boolean true si getState() devuelve DeviceState.OFFLINE.

isOnline

public boolean isOnline ()

Devuelve si el dispositivo está listo.

Muestra
boolean true si getState() devuelve DeviceState.ONLINE.

isRoot

public boolean isRoot ()

Consulta el estado de raíz actual del dispositivo. Consulta "adb root" para obtener más información.

Muestra
boolean Es verdadero si el daemon de adb se ejecuta como administrador; de lo contrario, es falso.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

matar

public void kill (String applicationName)

Cierra una aplicación por su nombre. Esto solo destruye las actividades y deja su estado solo en el sistema Android.

Parámetros
applicationName String: El nombre de la aplicación

pullFile

public void pullFile (String remote, 
                String local)

Extrae un solo archivo.

Parámetros
remote String: Es la ruta de acceso completa al archivo remoto.

local String: Es el destino local.

Arroja
AdbCommandRejectedException
SyncException
TimeoutException

push

public void push (String[] local, 
                String remote)

Envía varios archivos o directorios.

Parámetros
local String: Los archivos locales que se enviarán

remote String: Es la ruta de acceso remota que representa un directorio.

Arroja
AdbCommandRejectedException
SyncException
TimeoutException

pushFile

public void pushFile (String local, 
                String remote)

Envía un solo archivo.

Parámetros
local String: Es la ruta de acceso del archivo local.

remote String: la ruta de acceso remota

Arroja
AdbCommandRejectedException
SyncException
TimeoutException

rawBinder

public SocketChannel rawBinder (String service, 
                String[] parameters)

Invoca el servicio de Android Binder Bridge en un dispositivo remoto. Devuelve un canal de socket conectado al comando del binder del dispositivo.

La propiedad del SocketChannel se cede al llamador, por lo que se debe cerrar explícitamente después de su uso.

Parámetros
service String: El nombre del servicio de Android al que se conectará

parameters String: Son los parámetros del comando del vinculador.

Muestra
SocketChannel Un SocketChannel conectado al proceso en ejecución en el dispositivo. después de usarlo.

Arroja
AdbCommandRejectedException
TimeoutException

rawExec

public SocketChannel rawExec (String executable, 
                String[] parameters)

Invoca el servicio host:exec en un dispositivo remoto. Devuelve un canal de socket conectado al proceso en ejecución. Ten en cuenta que el servicio de ejecución no diferencia stdout y stderr, por lo que todo lo que se lea del socket puede provenir de cualquiera de las salidas y estar intercalado.

La propiedad del SocketChannel se cede al llamador, por lo que se debe cerrar explícitamente después de su uso.

Parámetros
executable String

parameters String

Muestra
SocketChannel Un SocketChannel conectado al proceso en ejecución en el dispositivo. después de usarlo.

Arroja
AdbCommandRejectedException
TimeoutException

reiniciar

public void reboot (String into)

Reinicia el dispositivo.

Parámetros
into String: Es el nombre del cargador de arranque en el que se reiniciará el dispositivo o un valor nulo para reiniciarlo.

Arroja
AdbCommandRejectedException
TimeoutException

removeForward

public void removeForward (int localPort)

Quita un reenvío de puerto entre un puerto local y uno remoto.

Parámetros
localPort int: Es el puerto local que se reenvía.

Arroja
AdbCommandRejectedException
TimeoutException

removeRemotePackage

public void removeRemotePackage (String remoteFilePath)

Quita un archivo del dispositivo.

Parámetros
remoteFilePath String: Ruta de acceso en el dispositivo del archivo que se quitará

Arroja
InstallException

removeReverse

public void removeReverse (int remotePort)

Quita la inversión de un puerto entre un puerto remoto y uno local.

Parámetros
remotePort int: Es el puerto remoto.

Arroja
AdbCommandRejectedException
TimeoutException

root

public boolean root ()

Solicita al daemon de adb que se convierta en raíz en el dispositivo. Es posible que esta operación falle de forma silenciosa y solo se complete correctamente en compilaciones para desarrolladores. Consulta "adb root" para obtener más información.

Muestra
boolean Es verdadero si el daemon de adb se ejecuta como administrador; de lo contrario, es falso.

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

startScreenRecorder

public void startScreenRecorder (String remoteFilePath, 
                ScreenRecorderOptions options, 
                IShellOutputReceiver receiver)

Inicia la grabación de pantalla en el dispositivo si este admite IDevice.Feature.SCREEN_RECORD.

Parámetros
remoteFilePath String

options ScreenRecorderOptions

receiver IShellOutputReceiver

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

supportsFeature

public boolean supportsFeature (IDevice.HardwareFeature feature)

Devuelve si este dispositivo admite la función de hardware determinada.

Parámetros
feature IDevice.HardwareFeature

Muestra
boolean

supportsFeature

public boolean supportsFeature (IDevice.Feature feature)

Devuelve un valor que indica si este dispositivo admite la función de software determinada.

Parámetros
feature IDevice.Feature

Muestra
boolean

syncPackageToDevice

public String syncPackageToDevice (String localFilePath)

Envía un archivo al dispositivo

Parámetros
localFilePath String: Es la ruta de acceso absoluta al archivo en el host local.

Muestra
String Ruta de acceso de destino String en el dispositivo para el archivo

Arroja
AdbCommandRejectedException
SyncException
TimeoutException

toString

public String toString ()

Muestra
String

uninstallApp

public String uninstallApp (String applicationID, 
                String... extraArgs)

Desinstala una app del dispositivo.

Parámetros
applicationID String: ID de la aplicación para Android que se desinstalará

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

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

Arroja
InstallException

uninstallPackage

public String uninstallPackage (String packageName)

Desinstala un paquete del dispositivo.

Parámetros
packageName String: ID de la aplicación para Android que se desinstalará

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

Arroja
InstallException