Sl4aClient

public class Sl4aClient
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.sl4a.Sl4aClient


透過 RPC 與 SL4A 指令碼層互動的 Sl4A 用戶端。

摘要

常數

String IS_SL4A_RUNNING_CMD

String IS_SL4A_RUNNING_CMD_OLD

String SL4A_LAUNCH_CMD

String STOP_SL4A_CMD

公用建構函式

Sl4aClient(ITestDevice device, File sl4aApkFile)

Creates the Sl4A client.

Sl4aClient(ITestDevice device, int hostPort, int devicePort)

Creates the Sl4A client.

公用方法

void close()

關閉裝置端的 sl4a 連線,並終止所有正在執行的 sl4a 執行個體。

Sl4aEventDispatcher getEventDispatcher()

傳回事件分派器,等待事件。

boolean isSl4ARunning()

如果 sl4a 裝置端用戶端正在執行,則傳回 true。

void open()

Helper to actually starts the connection host to device for sl4a.

Object rpcCall(String methodName, Object... args)

在 sl4a 層執行 RPC 呼叫。

static Sl4aClient startSL4A(ITestDevice device, File sl4aApkFile)

建立並啟動可供使用的用戶端的便利方法。

void startSl4A()

在裝置端啟動 sl4a 用戶端。

受保護的方法

IRunUtil getRunUtil()

傳回預設的 runutil 執行個體。

void startEventDispatcher()

啟動事件分配器。

常數

IS_SL4A_RUNNING_CMD

public static final String IS_SL4A_RUNNING_CMD

常數值: "ps -e | grep "S com.googlecode.android_scripting""

IS_SL4A_RUNNING_CMD_OLD

public static final String IS_SL4A_RUNNING_CMD_OLD

常數值: "ps | grep "S com.googlecode.android_scripting""

SL4A_LAUNCH_CMD

public static final String SL4A_LAUNCH_CMD

常數值: 「am start -a com.googlecode.android_scripting.action.LAUNCH_SERVER --ei com.googlecode.android_scripting.extra.USE_SERVICE_PORT %s com.googlecode.android_scripting/.activity.ScriptingLayerServiceLauncher」

STOP_SL4A_CMD

public static final String STOP_SL4A_CMD

常數值: "am force-stop com.googlecode.android_scripting"

公用建構函式

Sl4aClient

public Sl4aClient (ITestDevice device, 
                File sl4aApkFile)

建立 Sl4A 用戶端。

參數
device ITestDevice:用戶端使用的 {ITestDevice}。

sl4aApkFile File:要安裝的 sl4a apk 檔案路徑,如果已安裝則為空值。

擲回
DeviceNotAvailableException

Sl4aClient

public Sl4aClient (ITestDevice device, 
                int hostPort, 
                int devicePort)

建立 Sl4A 用戶端。

參數
device ITestDevice:用戶端適用的 {ITestDevice}。

hostPort int:主機上要連線至 sl4a 用戶端的通訊埠。

devicePort int:用於通訊的裝置通訊埠。

公用方法

關閉

public void close ()

關閉裝置端的 sl4a 連線,並終止所有正在執行的 sl4a 執行個體。 如果沒有執行個體正在執行,則不會執行任何動作。

getEventDispatcher

public Sl4aEventDispatcher getEventDispatcher ()

傳回事件分派器,等待事件。

傳回
Sl4aEventDispatcher

isSl4ARunning

public boolean isSl4ARunning ()

如果 sl4a 裝置端用戶端正在執行,則傳回 true。

傳回
boolean

擲回
DeviceNotAvailableException

開啟

public void open ()

Helper to actually starts the connection host to device for sl4a.

rpcCall

public Object rpcCall (String methodName, 
                Object... args)

在 sl4a 層執行 RPC 呼叫。

參數
methodName String:要在裝置端呼叫的方法名稱。

args Object:要在方法中使用的 arg 清單。

傳回
Object 要求的結果。

擲回
如果要求的方法不存在。

startSL4A

public static Sl4aClient startSL4A (ITestDevice device, 
                File sl4aApkFile)

建立並啟動可供使用的用戶端的便利方法。

參數
device ITestDevice:用戶端使用的 {ITestDevice}。

sl4aApkFile File:要安裝的 sl4a apk 檔案路徑,如果已安裝則為空值。

傳回
Sl4aClient 已啟動的 Sl4aClient 執行個體。

擲回
com.android.tradefed.device.DeviceNotAvailableException
DeviceNotAvailableException

startSl4A

public void startSl4A ()

在裝置端啟動 sl4a 用戶端。 假設已安裝 sl4a apk。

擲回
DeviceNotAvailableException

受保護的方法

getRunUtil

protected IRunUtil getRunUtil ()

傳回預設的 runutil 執行個體。公開測試。

傳回
IRunUtil

startEventDispatcher

protected void startEventDispatcher ()

啟動事件分配器。公開測試。

擲回
DeviceNotAvailableException