Sl4aBluetoothUtilor

public class Sl4aBluetoothUtil
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.Sl4aBluetoothUtil


公用程式類別可在一或兩部使用 SL4A 的裝置上提供藍牙作業

摘要

巢狀類別

enum Sl4aBluetoothUtil.BluetoothAccessLevel

藍牙裝置存取層級的列舉 (以 BluetoothDevice.java 為依據)

enum Sl4aBluetoothUtil.BluetoothConnectionState

藍牙連線狀態的列舉 (取決於 BluetoothProfile.java)

enum Sl4aBluetoothUtil.BluetoothPriorityLevel

藍牙設定檔優先等級列舉 (以 BluetoothProfile.java 為準)

enum Sl4aBluetoothUtil.BluetoothProfile

藍牙設定檔 (以 BluetoothProfile.java 為基礎)

公用建構函式

Sl4aBluetoothUtil()

公用方法

boolean changeProfileAccessPermission(ITestDevice primary, ITestDevice secondary, Sl4aBluetoothUtil.BluetoothProfile profile, Sl4aBluetoothUtil.BluetoothAccessLevel access)

變更主要裝置上的藍牙設定檔存取權限,以便 次要裝置,用於存取指定設定檔的主要裝置

boolean connect(ITestDevice primary, ITestDevice secondary, profiles)

將指定藍牙設定檔的主要裝置連線至次要裝置

boolean disable(ITestDevice device)

在目標裝置上停用藍牙

boolean disableBluetoothSnoopLog(ITestDevice device)

停用藍牙窺探記錄

boolean disconnect(ITestDevice primary, ITestDevice secondary, profiles)

中斷主要裝置與次要裝置的連線

boolean enable(ITestDevice device)

在目標裝置上啟用藍牙

boolean enableBluetoothSnoopLog(ITestDevice device)

啟用藍牙窺探記錄

String getAddress(ITestDevice device)

取得目標裝置的藍牙 MAC 位址

getBondedDevices(ITestDevice device)

為目標裝置取得綁定 (配對) 裝置的藍牙 MAC 位址

boolean pair(ITestDevice primary, ITestDevice secondary)

將主要裝置與次要裝置配對

void setBtConnectionTimeout(Duration timeout)
void setBtPairTimeout(Duration timeout)
boolean setProfilePriority(ITestDevice primary, ITestDevice secondary, profiles, Sl4aBluetoothUtil.BluetoothPriorityLevel priority)

將在主要裝置上指定設定檔的優先順序設定變更為次要裝置

void startSl4a(ITestDevice device, File sl4aApkFile)

以指定裝置和 SL4A APK 檔案明確啟動 SL4A 用戶端。

void stopSl4a()

停止已經開啟的 SL4A 用戶端。

boolean unpairAll(ITestDevice device)

將目前裝置的所有配對裝置解除配對

保護方法

void finalize()

清除所有 SL4A 連線

公用建構函式

Sl4aBluetoothUtilor

public Sl4aBluetoothUtil ()

公用方法

變更 ProfileAccessPermission

public boolean changeProfileAccessPermission (ITestDevice primary, 
                ITestDevice secondary, 
                Sl4aBluetoothUtil.BluetoothProfile profile, 
                Sl4aBluetoothUtil.BluetoothAccessLevel access)

變更主要裝置上的藍牙設定檔存取權限,以便 次要裝置,用於存取指定設定檔的主要裝置

參數
primary ITestDevice:要變更權限的裝置

secondary ITestDevice:存取指定設定檔主要裝置的裝置

profile Sl4aBluetoothUtil.BluetoothProfile:要存取的藍牙設定檔

access Sl4aBluetoothUtil.BluetoothAccessLevel:存取層級,詳情請參閱 BluetoothAccessLevel

傳回
boolean 如果權限成功變更,則為 true

擲回
DeviceNotAvailableException

連線

public boolean connect (ITestDevice primary, 
                ITestDevice secondary, 
                 profiles)

將指定藍牙設定檔的主要裝置連線至次要裝置

參數
primary ITestDevice:要連線的裝置

secondary ITestDevice:要連線的裝置

profiles :必須連結一組藍牙設定檔

傳回
boolean 如果連線成功,傳回 true

擲回
DeviceNotAvailableException

停用

public boolean disable (ITestDevice device)

在目標裝置上停用藍牙

參數
device ITestDevice:目標裝置

傳回
boolean 如果藍牙已成功停用,則傳回 true

擲回
DeviceNotAvailableException

停用藍牙 SnoopLog

public boolean disableBluetoothSnoopLog (ITestDevice device)

停用藍牙窺探記錄

參數
device ITestDevice:停用窺探記錄

傳回
boolean 如果成功停用則為 true

擲回
DeviceNotAvailableException

取消連結

public boolean disconnect (ITestDevice primary, 
                ITestDevice secondary, 
                 profiles)

中斷主要裝置與次要裝置的連線

參數
primary ITestDevice:執行中斷連線作業的裝置

secondary ITestDevice:即將中斷連線的裝置

profiles :指定需中斷連線的藍牙設定檔

傳回
boolean 如果連線成功,傳回 true

擲回
DeviceNotAvailableException

啟用

public boolean enable (ITestDevice device)

在目標裝置上啟用藍牙

參數
device ITestDevice:目標裝置

傳回
boolean 如果藍牙已成功啟用則為 true

擲回
DeviceNotAvailableException

啟用藍牙 SnoopLog

public boolean enableBluetoothSnoopLog (ITestDevice device)

啟用藍牙窺探記錄

參數
device ITestDevice:啟用窺探記錄

傳回
boolean 如果已成功啟用,會傳回 true

擲回
DeviceNotAvailableException

getAddress

public String getAddress (ITestDevice device)

取得目標裝置的藍牙 MAC 位址

參數
device ITestDevice:目標裝置

傳回
String MAC 位址字串

擲回
DeviceNotAvailableException

getBondedDevice

public  getBondedDevices (ITestDevice device)

為目標裝置取得綁定 (配對) 裝置的藍牙 MAC 位址

參數
device ITestDevice:目標裝置

傳回
藍牙 MAC 位址組合

擲回
DeviceNotAvailableException

配對

public boolean pair (ITestDevice primary, 
                ITestDevice secondary)

將主要裝置與次要裝置配對

參數
primary ITestDevice:要配對的裝置

secondary ITestDevice:要配對的裝置

傳回
boolean 如果配對成功,則為 true

擲回
DeviceNotAvailableException

setBtConnectionTimeout

public void setBtConnectionTimeout (Duration timeout)

參數
timeout Duration

setBtPairTimeout

public void setBtPairTimeout (Duration timeout)

參數
timeout Duration

setProfilePriority

public boolean setProfilePriority (ITestDevice primary, 
                ITestDevice secondary, 
                 profiles, 
                Sl4aBluetoothUtil.BluetoothPriorityLevel priority)

將在主要裝置上指定設定檔的優先順序設定變更為次要裝置

參數
primary ITestDevice:要設定優先順序的裝置

secondary ITestDevice:要設定優先順序的裝置

profiles :要變更優先順序設定的藍牙設定檔

priority Sl4aBluetoothUtil.BluetoothPriorityLevel:優先順序等級

傳回
boolean 如果已成功設定優先順序,則為 true

擲回
DeviceNotAvailableException

Sl4a

public void startSl4a (ITestDevice device, 
                File sl4aApkFile)

以指定裝置和 SL4A APK 檔案明確啟動 SL4A 用戶端。一般情況下 不需要,因為系統一律會在實際作業前建立 SL4A 連線。

參數
device ITestDevice:要透過 SL4A 連線的裝置

sl4aApkFile File:要安裝及使用的選用 SL4A APK。

擲回
DeviceNotAvailableException

停止 Sl4a

public void stopSl4a ()

停止已經開啟的 SL4A 用戶端。基本上就是 在使用完畢後立即停用

全部解除配對

public boolean unpairAll (ITestDevice device)

將目前裝置的所有配對裝置解除配對

參數
device ITestDevice:目前要執行動作的裝置

傳回
boolean 如果是成功解除配對,則為 true

擲回
DeviceNotAvailableException

保護方法

完成

protected void finalize ()

清除所有 SL4A 連線