IDevice

public interface IDevice
implements IShellEnabledDevice

com.android.ddmlib.IDevice


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

Resumen

Constantes

int CHANGE_BUILD_INFO

Máscara de bits de cambio del dispositivo: Cambio de información de compilación.

int CHANGE_CLIENT_LIST

Máscara de bits de cambio de dispositivo: Cambio de la lista de Client.

int CHANGE_PROFILEABLE_CLIENT_LIST

Máscara de bits de cambio de dispositivo: Cambio de la lista de ProfileableClient.

int CHANGE_STATE

Máscara de bits de cambio de dispositivo: cambio de DeviceState.

String FIRST_EMULATOR_SN

Número de serie del primer emulador conectado.

String MNT_DATA

String MNT_EXTERNAL_STORAGE

String MNT_ROOT

String PROP_BUILD_API_LEVEL

String PROP_BUILD_CHARACTERISTICS

String PROP_BUILD_CODENAME

String PROP_BUILD_TAGS

String PROP_BUILD_TYPE

String PROP_BUILD_VERSION

String PROP_BUILD_VERSION_NUMBER

Esta constante dejó de estar disponible. Usa PROP_BUILD_API_LEVEL.

String PROP_DEBUGGABLE

String PROP_DEVICE_CPU_ABI

String PROP_DEVICE_CPU_ABI2

String PROP_DEVICE_CPU_ABI_LIST

String PROP_DEVICE_DENSITY

String PROP_DEVICE_EMULATOR_DENSITY

String PROP_DEVICE_LANGUAGE

String PROP_DEVICE_MANUFACTURER

String PROP_DEVICE_MODEL

String PROP_DEVICE_REGION

String RE_EMULATOR_SN

Es la expresión regular del número de serie del emulador.

String UNKNOWN_PACKAGE

Métodos públicos

abstract boolean arePropertiesSet()

Devuelve true si las propiedades se almacenaron en caché.

abstract 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.

abstract void createForward(int localPort, int remotePort)

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

default void createReverse(int remotePort, int localPort)

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

default 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.

default 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.

abstract 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()).

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

Este método dejó de estar disponible. Usa IShellEnabledDevice.executeShellCommand(String, com.android.ddmlib.IShellOutputReceiver, long, TimeUnit).

default void forceStop(String applicationName)

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

abstract getAbis()

Devuelve las ABI que admite este dispositivo.

default ListenableFuture<AvdData> getAvdData()

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

abstract String getAvdName()

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

abstract String getAvdPath()

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

abstract getBattery(long freshnessTime, TimeUnit timeUnit)

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

abstract getBattery()

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

abstract Integer getBatteryLevel(long freshnessMs)

Este método dejó de estar disponible. usar getBattery(long, TimeUnit)

abstract Integer getBatteryLevel()

Este método dejó de estar disponible. usar getBattery()

abstract Client getClient(String applicationName)

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

abstract String getClientName(int pid)

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

abstract Client[] getClients()

Devuelve el array de clientes.

abstract int getDensity()

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

abstract FileListingService getFileListingService()

Devuelve un FileListingService para este dispositivo.

default getHardwareCharacteristics()

Devuelve los atributos obtenidos leyendo la propiedad de características de compilación.

abstract String getLanguage()

Devuelve el idioma del usuario.

default InstallMetrics getLastInstallMetrics()

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

abstract String getMountPoint(String name)

Devuelve un punto de activación.

default ProfileableClient[] getProfileableClients()

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

abstract getProperties()

Este método dejó de estar disponible. usa IShellEnabledDevice.getSystemProperty(String) en su lugar

abstract 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.

abstract String getPropertyCacheOrSync(String name)

Este método dejó de estar disponible. usa IShellEnabledDevice.getSystemProperty(String) en su lugar

abstract int getPropertyCount()

Este método dejó de estar disponible. detalle de implementación

abstract String getPropertySync(String name)

Este método dejó de estar disponible. usar IShellEnabledDevice.getSystemProperty(String)

abstract String getRegion()

Devuelve la región del usuario.

abstract RawImage getScreenshot()

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

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

Devuelve el número de serie del dispositivo.

abstract IDevice.DeviceState getState()

Devuelve el estado del dispositivo.

abstract SyncService getSyncService()

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

abstract boolean hasClients()

Devuelve si el IDevice tiene Clients.

abstract 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.

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

Instala una aplicación para Android en el dispositivo.

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

Instala una aplicación para Android en el dispositivo.

default 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.

abstract 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).

abstract 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.

abstract 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.

abstract 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.

default 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.

default 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.

abstract boolean isBootLoader()

Devuelve si el dispositivo está en modo de bootloader.

abstract boolean isEmulator()

Devuelve true si el dispositivo es un emulador.

abstract boolean isOffline()

Devuelve si el dispositivo no tiene conexión.

abstract boolean isOnline()

Devuelve si el dispositivo está listo.

abstract boolean isRoot()

Consulta el estado de raíz actual del dispositivo.

default void kill(String applicationName)

Cierra una aplicación por su nombre.

abstract void pullFile(String remote, String local)

Extrae un solo archivo.

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

Envía varios archivos o directorios.

abstract void pushFile(String local, String remote)

Envía un solo archivo.

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

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

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

Invoca el servicio host:exec en un dispositivo remoto.

abstract void reboot(String into)

Reinicia el dispositivo.

default void removeForward(int localPort)

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

default void removeForward(int localPort, int remotePort)

Este método dejó de estar disponible. Usa removeForward(int)

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

Este método dejó de estar disponible. Usa removeForward(int)

abstract void removeRemotePackage(String remoteFilePath)

Quita un archivo del dispositivo.

default void removeReverse(int remotePort)

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

abstract boolean root()

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

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

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

abstract boolean supportsFeature(IDevice.HardwareFeature feature)

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

abstract boolean supportsFeature(IDevice.Feature feature)

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

abstract String syncPackageToDevice(String localFilePath)

Envía un archivo al dispositivo

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

Desinstala una app del dispositivo.

abstract String uninstallPackage(String packageName)

Desinstala un paquete del dispositivo.

Constantes

CHANGE_BUILD_INFO

public static final int CHANGE_BUILD_INFO

Máscara de bits de cambio del dispositivo: Cambio de información de compilación.

Valor constante: 4 (0x00000004)

CHANGE_CLIENT_LIST

public static final int CHANGE_CLIENT_LIST

Máscara de bits de cambio de dispositivo: Cambio de la lista de Client.

Valor constante: 2 (0x00000002)

CHANGE_PROFILEABLE_CLIENT_LIST

public static final int CHANGE_PROFILEABLE_CLIENT_LIST

Máscara de bits de cambio de dispositivo: Cambio de la lista de ProfileableClient.

Valor constante: 8 (0x00000008)

CHANGE_STATE

public static final int CHANGE_STATE

Máscara de bits de cambio de dispositivo: Cambio de DeviceState.

Valor constante: 1 (0x00000001)

FIRST_EMULATOR_SN

public static final String FIRST_EMULATOR_SN

Número de serie del primer emulador conectado.

Valor de la constante: "emulator-5554"

MNT_DATA

public static final String MNT_DATA

Valor de la constante: "ANDROID_DATA"

MNT_EXTERNAL_STORAGE

public static final String MNT_EXTERNAL_STORAGE

Valor de la constante: "EXTERNAL_STORAGE"

MNT_ROOT

public static final String MNT_ROOT

Valor de la constante: "ANDROID_ROOT"

PROP_BUILD_API_LEVEL

public static final String PROP_BUILD_API_LEVEL

Valor de la constante: "ro.build.version.sdk"

PROP_BUILD_CHARACTERISTICS

public static final String PROP_BUILD_CHARACTERISTICS

Valor de la constante: "ro.build.characteristics"

PROP_BUILD_CODENAME

public static final String PROP_BUILD_CODENAME

Valor de la constante: "ro.build.version.codename"

PROP_BUILD_TAGS

public static final String PROP_BUILD_TAGS

Valor de la constante: "ro.build.tags"

PROP_BUILD_TYPE

public static final String PROP_BUILD_TYPE

Valor de la constante: "ro.build.type"

PROP_BUILD_VERSION

public static final String PROP_BUILD_VERSION

Valor de la constante: "ro.build.version.release"

PROP_BUILD_VERSION_NUMBER

public static final String PROP_BUILD_VERSION_NUMBER

Esta constante dejó de estar disponible.
Usa PROP_BUILD_API_LEVEL.

Valor de la constante: "ro.build.version.sdk"

PROP_DEBUGGABLE

public static final String PROP_DEBUGGABLE

Valor de la constante: "ro.debuggable"

PROP_DEVICE_CPU_ABI

public static final String PROP_DEVICE_CPU_ABI

Valor de la constante: "ro.product.cpu.abi"

PROP_DEVICE_CPU_ABI2

public static final String PROP_DEVICE_CPU_ABI2

Valor constante: "ro.product.cpu.abi2"

PROP_DEVICE_CPU_ABI_LIST

public static final String PROP_DEVICE_CPU_ABI_LIST

Valor de la constante: "ro.product.cpu.abilist"

PROP_DEVICE_DENSITY

public static final String PROP_DEVICE_DENSITY

Valor constante: "ro.sf.lcd_density"

PROP_DEVICE_EMULATOR_DENSITY

public static final String PROP_DEVICE_EMULATOR_DENSITY

Valor de la constante: "qemu.sf.lcd_density"

PROP_DEVICE_LANGUAGE

public static final String PROP_DEVICE_LANGUAGE

Valor de la constante: "persist.sys.language"

PROP_DEVICE_MANUFACTURER

public static final String PROP_DEVICE_MANUFACTURER

Valor de la constante: "ro.product.manufacturer"

PROP_DEVICE_MODEL

public static final String PROP_DEVICE_MODEL

Valor de la constante: "ro.product.model"

PROP_DEVICE_REGION

public static final String PROP_DEVICE_REGION

Valor constante: "persist.sys.country"

RE_EMULATOR_SN

public static final String RE_EMULATOR_SN

Es la expresión regular del número de serie del emulador.

Valor de la constante: "emulator-(\d+)"

UNKNOWN_PACKAGE

public static final String UNKNOWN_PACKAGE

Valor de la constante: ""

Métodos públicos

arePropertiesSet

public abstract boolean arePropertiesSet ()

Devuelve true si las propiedades se almacenaron en caché.

Muestra
boolean

createForward

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

createForward

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
ShellCommandUnresponsiveException en caso de que el comando del binder no envíe resultados durante un tiempo determinado.
en caso de error de E/S en la conexión

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 abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
ShellCommandUnresponsiveException en caso de que el comando de shell no envíe resultados durante un tiempo determinado.
en caso de error de E/S en la conexión

executeShellCommand

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

Este método dejó de estar disponible.
Usa IShellEnabledDevice.executeShellCommand(String, com.android.ddmlib.IShellOutputReceiver, long, TimeUnit).

Parámetros
command String

receiver IShellOutputReceiver

maxTimeToOutputResponse int

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 abstract  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 abstract 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 abstract 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 abstract  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 abstract  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 abstract Integer getBatteryLevel (long freshnessMs)

Este método dejó de estar disponible.
use getBattery(long, 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 transcurrieron freshnessMs ms desde la última consulta exitosa.

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

Arroja
com.android.ddmlib.ShellCommandUnresponsiveException
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

getBatteryLevel

public abstract Integer getBatteryLevel ()

Este método dejó de estar disponible.
use 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
Integer El nivel de batería o null si no se pudo recuperar

Arroja
AdbCommandRejectedException
ShellCommandUnresponsiveException
TimeoutException

getClient

public abstract Client getClient (String applicationName)

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

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

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

getClientName

public abstract 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

getClients

public abstract Client[] getClients ()

Devuelve el array de clientes.

Muestra
Client[]

getDensity

public abstract 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 abstract FileListingService getFileListingService ()

Devuelve un FileListingService para este dispositivo.

Muestra
FileListingService

getHardwareCharacteristics

public  getHardwareCharacteristics ()

Devuelve los atributos obtenidos leyendo la propiedad de características de compilación.

Muestra

getLanguage

public abstract 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 abstract 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

getProfileableClients

public ProfileableClient[] getProfileableClients ()

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

Muestra
ProfileableClient[]

getProperties

public abstract  getProperties ()

Este método dejó de estar disponible.
usa IShellEnabledDevice.getSystemProperty(String) en su lugar

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

Muestra

getProperty

public abstract 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 abstract String getPropertyCacheOrSync (String name)

Este método dejó de estar disponible.
Usa IShellEnabledDevice.getSystemProperty(String) en su lugar

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

Arroja
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
ShellCommandUnresponsiveException en caso de que el comando de shell no envíe resultados durante un tiempo determinado.
en caso de error de E/S en la conexión

getPropertyCount

public abstract int getPropertyCount ()

Este método dejó de estar disponible.
detalle de implementación

Devuelve la cantidad de propiedades de este dispositivo.

Muestra
int

getPropertySync

public abstract String getPropertySync (String name)

Este método dejó de estar disponible.
use IShellEnabledDevice.getSystemProperty(String)

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

Arroja
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
ShellCommandUnresponsiveException en caso de que el comando de shell no envíe resultados durante un tiempo determinado.
en caso de error de E/S en la conexión

getRegion

public abstract String getRegion ()

Devuelve la región del usuario.

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

getScreenshot

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

getScreenshot

public abstract RawImage getScreenshot (long timeout, 
                TimeUnit unit)

Parámetros
timeout long

unit TimeUnit

Muestra
RawImage

Arroja
AdbCommandRejectedException
TimeoutException

getSerialNumber

public abstract String getSerialNumber ()

Devuelve el número de serie del dispositivo.

Muestra
String

getState

public abstract IDevice.DeviceState getState ()

Devuelve el estado del dispositivo.

Muestra
IDevice.DeviceState

getSyncService

public abstract SyncService getSyncService ()

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

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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
Si falló la conexión con adb

hasClients

public abstract boolean hasClients ()

Devuelve si el IDevice tiene Clients.

Muestra
boolean

installPackage

public abstract 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 si falla la instalación

installPackage

public abstract 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 si falla la instalación

installPackage

public abstract 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 si falla la instalación

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 si falla la instalación

installPackages

public abstract 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 si falla la instalación

installRemotePackage

public abstract 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 si falla la instalación

installRemotePackage

public abstract 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 si falla la instalación

installRemotePackage

public abstract 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 si falla la instalación

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 si falla la instalación

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 si falla la instalación

isBootLoader

public abstract boolean isBootLoader ()

Devuelve si el dispositivo está en modo de bootloader.

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

isEmulator

public abstract boolean isEmulator ()

Devuelve true si el dispositivo es un emulador.

Muestra
boolean

isOffline

public abstract boolean isOffline ()

Devuelve si el dispositivo no tiene conexión.

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

isOnline

public abstract boolean isOnline ()

Devuelve si el dispositivo está listo.

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

isRoot

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando.
ShellCommandUnresponsiveException

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 abstract 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
en caso de una excepción de IO.
AdbCommandRejectedException Si adb rechaza el comando
TimeoutException en caso de que se agote el tiempo de espera para leer las respuestas del dispositivo.
SyncException en caso de que se produzca una excepción de sincronización.

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
en caso de error de E/S en la conexión
AdbCommandRejectedException Si adb rechaza el comando
TimeoutException en caso de que se agote el tiempo de espera para leer las respuestas del dispositivo
SyncException Si no se pudieron enviar algunos archivos

pushFile

public abstract 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
en caso de error de E/S en la conexión
AdbCommandRejectedException Si adb rechaza el comando
TimeoutException en caso de que se agote el tiempo de espera para leer las respuestas del dispositivo
SyncException Si no se pudo enviar el archivo

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 abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
IOException

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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

removeForward

public void removeForward (int localPort, 
                int remotePort)

Este método dejó de estar disponible.
Usa removeForward(int)

Parámetros
localPort int

remotePort int

Arroja
AdbCommandRejectedException
TimeoutException

removeForward

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

Este método dejó de estar disponible.
Usa removeForward(int)

Parámetros
localPort int

remoteSocketName String

namespace IDevice.DeviceUnixSocketNamespace

Arroja
AdbCommandRejectedException
TimeoutException

removeRemotePackage

public abstract 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 si falla la instalación

removeReverse

public void removeReverse (int remotePort)

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

Parámetros
remotePort int: Es el puerto remoto.

Arroja
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión

root

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando.
ShellCommandUnresponsiveException si no se puede consultar el estado de la raíz.
IOException

startScreenRecorder

public abstract 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 abstract 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 abstract 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 abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión.
AdbCommandRejectedException Si adb rechaza el comando
en caso de error de E/S en la conexión
SyncException Si se produce un error durante la transferencia del paquete al dispositivo

uninstallApp

public abstract 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 si falla la desinstalación.

uninstallPackage

public abstract 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 si falla la desinstalación.