RemoteAndroidDevice

public class RemoteAndroidDevice
extends TestDevice

java.lang.Object
   ↳ com.android.tradefed.device.NativeDevice
     ↳ com.android.tradefed.device.TestDevice
       ↳ com.android.tradefed.device.RemoteAndroidDevice


Implementation of a ITestDevice for a full stack android device connected via adb connect. Assume the device serial will be in the format : in adb.

Summary

Constants

long DEFAULT_SHORT_CMD_TIMEOUT

int MAX_RETRIES

long RETRY_INTERVAL_MS

long WAIT_FOR_ADB_CONNECT

Public constructors

RemoteAndroidDevice(IDevice device, IDeviceStateMonitor stateMonitor, IDeviceMonitor allocationMonitor)

Creates a RemoteAndroidDevice.

Public methods

boolean adbTcpConnect(String host, String port)

Helper method to adb connect to a given tcp ip Android device

boolean adbTcpDisconnect(String host, String port)

Helper method to adb disconnect from a given tcp ip Android device

String getHostName()

Return the hostname associated with the device.

String getMacAddress()

Returns the MAC address of the device, null if it fails to query from the device.

String getPortNum()

Return the port number asociated with the device.

boolean isEncryptionSupported()

Returns if encryption is supported on the device.

void postAdbRootAction()

Override if the device needs some specific actions to be taken after adb root and before the device is back online.

void postAdbUnrootAction()

Override if the device needs some specific actions to be taken after adb unroot and before the device is back online.

void waitForAdbConnect(long waitTime)

Check if the adb connection is enabled.

Constants

DEFAULT_SHORT_CMD_TIMEOUT

long DEFAULT_SHORT_CMD_TIMEOUT

Constant Value: 20000 (0x0000000000004e20)

MAX_RETRIES

int MAX_RETRIES

Constant Value: 5 (0x00000005)

RETRY_INTERVAL_MS

long RETRY_INTERVAL_MS

Constant Value: 5000 (0x0000000000001388)

WAIT_FOR_ADB_CONNECT

long WAIT_FOR_ADB_CONNECT

Constant Value: 120000 (0x000000000001d4c0)

Public constructors

RemoteAndroidDevice

RemoteAndroidDevice (IDevice device, 
                IDeviceStateMonitor stateMonitor, 
                IDeviceMonitor allocationMonitor)

Creates a RemoteAndroidDevice.

Parameters
device IDevice: the associated IDevice
stateMonitor IDeviceStateMonitor: the IDeviceStateMonitor mechanism to use
allocationMonitor IDeviceMonitor: the IDeviceMonitor to inform of allocation state changes.

Public methods

adbTcpConnect

boolean adbTcpConnect (String host, 
                String port)

Helper method to adb connect to a given tcp ip Android device

Parameters
host String: the hostname/ip of a tcp/ip Android device
port String: the port number of a tcp/ip device
Returns
boolean true if we successfully connected to the device, false otherwise.

adbTcpDisconnect

boolean adbTcpDisconnect (String host, 
                String port)

Helper method to adb disconnect from a given tcp ip Android device

Parameters
host String: the hostname/ip of a tcp/ip Android device
port String: the port number of a tcp/ip device
Returns
boolean true if we successfully disconnected to the device, false otherwise.

getHostName

String getHostName ()

Return the hostname associated with the device. Extracted from the serial.

Returns
String

getMacAddress

String getMacAddress ()

Returns the MAC address of the device, null if it fails to query from the device.

Returns
String

getPortNum

String getPortNum ()

Return the port number asociated with the device. Extracted from the serial.

Returns
String

isEncryptionSupported

boolean isEncryptionSupported ()

Returns if encryption is supported on the device.

Returns
boolean true if the device supports encryption.

postAdbRootAction

void postAdbRootAction ()

Override if the device needs some specific actions to be taken after adb root and before the device is back online. Default implementation doesn't include any addition actions. adb root is not guaranteed to be enabled at this stage.

Throws
DeviceNotAvailableException

postAdbUnrootAction

void postAdbUnrootAction ()

Override if the device needs some specific actions to be taken after adb unroot and before the device is back online. Default implementation doesn't include any additional actions. adb root is not guaranteed to be disabled at this stage.

Throws
DeviceNotAvailableException

waitForAdbConnect

void waitForAdbConnect (long waitTime)

Check if the adb connection is enabled.

Parameters
waitTime long
Throws
DeviceNotAvailableException