IShellEnabledDevice

public interface IShellEnabledDevice

com.android.ddmlib.IShellEnabledDevice


Es un dispositivo abstracto que puede recibir comandos de shell.

Resumen

Métodos públicos

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

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

abstract String getName()

Devuelve un nombre (humanizado) para este dispositivo.

abstract ListenableFuture<String> getSystemProperty(String name)

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

Métodos públicos

executeShellCommand

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión al enviar el comando.
AdbCommandRejectedException Si adb rechaza el comando.
ShellCommandUnresponsiveException en caso de que el comando shell no envíe ningún resultado durante un período superior a maxTimeToOutputResponse.
en caso de error de E/S en la conexión

executeShellCommand

public abstract 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
TimeoutException en caso de que se agote el tiempo de espera de la conexión al enviar el comando.
AdbCommandRejectedException Si adb rechaza el comando.
ShellCommandUnresponsiveException en caso de que el comando shell no envíe ningún resultado durante un período superior a maxTimeToOutputResponse.
en caso de error de E/S en la conexión

getName

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

getSystemProperty

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