IWifiHelper

public interface IWifiHelper

com.android.tradefed.device.IWifiHelper


用於操控裝置上 Wi-Fi 服務的輔助介面。

摘要

公用方法

abstract boolean addOpenNetwork(String ssid)

新增由 SSID 識別的開放式安全網路。

abstract boolean addOpenNetwork(String ssid, boolean scanSsid)

新增由 SSID 識別的開放式安全網路。

abstract boolean addWpaPskNetwork(String ssid, String psk)

新增由 ssid 識別的 WPA-PSK 安全網路。

abstract boolean addWpaPskNetwork(String ssid, String psk, boolean scanSsid)

新增由 ssid 識別的 WPA-PSK 安全網路。

abstract boolean checkConnectivity(String urlToCheck)

向指定網址傳送 HTTP 要求,檢查連線狀態。

abstract void cleanUp()

清理資源和 Wi-Fi 輔助程式套件安裝。

abstract boolean connectToNetwork(String ssid, String psk, String urlToCheck)

連線至 Wi-Fi 網路並檢查連線狀態。

abstract IWifiHelper.WifiConnectionResult connectToNetwork(String ssid, String psk, String urlToCheck, boolean scanSsid, String defaultType)

連線至 Wi-Fi 網路並檢查連線狀態。

abstract IWifiHelper.WifiConnectionResult connectToNetwork(String ssid, String psk, String urlToCheck, boolean scanSsid)

連線至 Wi-Fi 網路並檢查連線狀態。

abstract boolean disableWifi()

停用裝置的 Wi-Fi 狀態。

abstract boolean disconnectFromNetwork()

中斷目前的 Wi-Fi 網路連線,並停用 Wi-Fi。

abstract boolean enableWifi()

在裝置上啟用 Wi-Fi 狀態。

abstract String getBSSID()

取得目前存取點的基本服務集 ID (BSSID)。

abstract String getIpAddress()

取得與 Wi-Fi 介面相關聯的 IP 位址。

abstract String getSSID()

取得目前連線網路的服務集識別碼。

abstract Map<String, String> getWifiInfo()

取得目前的 Wi-Fi 連線資訊。

abstract boolean hasValidIp()
abstract boolean isWifiEnabled()

檢查目前是否已啟用 Wi-Fi。

abstract boolean removeAllNetworks()

移除所有已知網路。

abstract boolean startMonitor(long interval, String urlToCheck)

開始監控網路連線。

abstract List<Long> stopMonitor()

停止監控網路連線。

abstract boolean waitForIp(long timeout)

等待系統將 IP 位址指派給 Wi-Fi 介面卡。

abstract boolean waitForWifiDisabled(long timeout)

等待 isWifiEnabled() 變成 false。

abstract boolean waitForWifiDisabled()

等待 isWifiEnabled() 變成 false,並使用預設逾時。

abstract boolean waitForWifiEnabled(long timeout)

等待 isWifiEnabled() 變成 true。

abstract boolean waitForWifiEnabled()

等待 isWifiEnabled() 成為 true,並使用預設逾時。

abstract boolean waitForWifiState(WifiState... expectedStates)

等待預期的 Wi-Fi 狀態發生。

公用方法

addOpenNetwork

public abstract boolean addOpenNetwork (String ssid)

新增由 SSID 識別的開放式安全網路。

如要連上任何 Wi-Fi 網路,必須先在 wpa_supplicant 設定中建立網路設定檔。這會呼叫 wpa_cli,以新增由 ssid 識別的開放式安全網路。

參數
ssid String:要新增的網路 SSID。

傳回
boolean 如果成功新增聯播網,則為 true,否則為 false

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

addOpenNetwork

public abstract boolean addOpenNetwork (String ssid, 
                boolean scanSsid)

新增由 SSID 識別的開放式安全網路。

如要連上任何 Wi-Fi 網路,必須先在 wpa_supplicant 設定中建立網路設定檔。這會呼叫 wpa_cli,以新增由 ssid 識別的開放式安全網路。

參數
ssid String:要新增的網路 SSID。

scanSsid boolean:是否掃描這個網路的隱藏 SSID。

傳回
boolean 如果成功新增聯播網,則為 true,否則為 false

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

addWpaPskNetwork

public abstract boolean addWpaPskNetwork (String ssid, 
                String psk)

新增由 ssid 識別的 WPA-PSK 安全網路。

參數
ssid String:要新增的網路 SSID。

psk String:要使用的 WPA-PSK 密碼

傳回
boolean 如果成功新增聯播網,則為 true,否則為 false

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

addWpaPskNetwork

public abstract boolean addWpaPskNetwork (String ssid, 
                String psk, 
                boolean scanSsid)

新增由 ssid 識別的 WPA-PSK 安全網路。

參數
ssid String:要新增的網路 SSID。

psk String:要使用的 WPA-PSK 密碼

scanSsid boolean:是否掃描這個網路的隱藏 SSID。

傳回
boolean 如果成功新增聯播網,則為 true,否則為 false

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

checkConnectivity

public abstract boolean checkConnectivity (String urlToCheck)

透過向指定網址傳送 HTTP 要求,檢查連線狀態。

參數
urlToCheck String:HTTP 要求檢查的目的地網址

傳回
boolean true 裝置是否通過連線檢查。

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

cleanUp

public abstract void cleanUp ()

清理資源並安裝 Wi-Fi 輔助程式套件。如果呼叫不再需要 Wi-Fi,就應呼叫這個方法,因為解除安裝輔助程式時,裝置會失去 Wi-Fi 連線。

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

connectToNetwork

public abstract boolean connectToNetwork (String ssid, 
                String psk, 
                String urlToCheck)

連線至 Wi-Fi 網路並檢查連線狀態。

參數
ssid String:要連線的網路 SSID

psk String:要使用的 WPA-PSK 密碼片語。這個值可以為空值。

urlToCheck String:HTTP 要求檢查的目的地網址

傳回
boolean true 裝置是否通過連線檢查。

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

connectToNetwork

public abstract IWifiHelper.WifiConnectionResult connectToNetwork (String ssid, 
                String psk, 
                String urlToCheck, 
                boolean scanSsid, 
                String defaultType)

連線至 Wi-Fi 網路並檢查連線狀態。

參數
ssid String:要連線的網路 SSID

psk String:要使用的 WPA-PSK 密碼片語。這個值可以為空值。

urlToCheck String:HTTP 要求檢查的目的地網址

scanSsid boolean:是否掃描這個網路的隱藏 SSID

defaultType String:如果無法判斷 SSID 的網路類型,則會改用這個預設網路類型

傳回
IWifiHelper.WifiConnectionResult WifiConnectionResult,代表 Wi-Fi 連線結果

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

connectToNetwork

public abstract IWifiHelper.WifiConnectionResult connectToNetwork (String ssid, 
                String psk, 
                String urlToCheck, 
                boolean scanSsid)

連線至 Wi-Fi 網路並檢查連線狀態。

參數
ssid String:要連線的網路 SSID

psk String:要使用的 WPA-PSK 密碼片語。這個值可以為空值。

urlToCheck String:HTTP 要求檢查的目的地網址

scanSsid boolean:是否掃描這個網路的隱藏 SSID

傳回
IWifiHelper.WifiConnectionResult WifiConnectionResult,代表 Wi-Fi 連線結果

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

disableWifi

public abstract boolean disableWifi ()

停用裝置的 Wi-Fi 狀態。

傳回
boolean true (如果 Wi-Fi 已成功停用)

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

disconnectFromNetwork

public abstract boolean disconnectFromNetwork ()

中斷目前的 Wi-Fi 網路連線,並停用 Wi-Fi。

傳回
boolean 如果作業成功,則為 true

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

enableWifi

public abstract boolean enableWifi ()

在裝置上啟用 Wi-Fi 狀態。

傳回
boolean true (如果 Wi-Fi 已成功啟用)

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

getBSSID

public abstract String getBSSID ()

取得目前存取點的基本服務集 ID (BSSID)。

傳回
String

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

getIpAddress

public abstract String getIpAddress ()

取得與 Wi-Fi 介面相關聯的 IP 位址。如果無法擷取 IP 位址,則傳回 null

傳回
String

擲回
DeviceNotAvailableException

getSSID

public abstract String getSSID ()

取得目前連線網路的服務集 ID。

傳回
String

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

getWifiInfo

public abstract Map<String, String> getWifiInfo ()

取得目前的 Wi-Fi 連線資訊。

包括 SSID、BSSID、IP 位址、連結速度和 RSSI。

傳回
Map<String, String> 包含 Wi-Fi 連線資訊的地圖。

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

hasValidIp

public abstract boolean hasValidIp ()

傳回
boolean true 如果裝置有有效的 IP 位址

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

isWifiEnabled

public abstract boolean isWifiEnabled ()

確認目前是否已啟用 Wi-Fi。

傳回
boolean

擲回
DeviceNotAvailableException

removeAllNetworks

public abstract boolean removeAllNetworks ()

移除所有已知網路。

傳回
boolean

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

startMonitor

public abstract boolean startMonitor (long interval, 
                String urlToCheck)

開始監控網路連線。

參數
interval long:連線檢查間隔。

urlToCheck String:用於檢查連線的網址。

傳回
boolean 如果作業成功,則為 true

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

stopMonitor

public abstract List<Long> stopMonitor ()

停止監控網路連線。

這也會傳回自上次 IWifiHelper.startMonitor(long,String) 呼叫以來的延遲時間記錄。

傳回
List<Long> 延遲記錄。

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

waitForIp

public abstract boolean waitForIp (long timeout)

等待系統將 IP 位址指派給 Wi-Fi 介面卡。

參數
timeout long:等待時間長度

傳回
boolean true if an ip address is assigned before timeout, false otherwise

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

waitForWifiDisabled

public abstract boolean waitForWifiDisabled (long timeout)

等待 isWifiEnabled() 變成 false。

參數
timeout long:等待時間 (以毫秒為單位)

傳回
boolean 如果 Wi-Fi 在逾時前已停用,則為 true,否則為 false

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

waitForWifiDisabled

public abstract boolean waitForWifiDisabled ()

等待 isWifiEnabled() 變成 false,並使用預設逾時。

傳回
boolean 如果 Wi-Fi 在逾時前已停用,則為 true,否則為 false

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

waitForWifiEnabled

public abstract boolean waitForWifiEnabled (long timeout)

等待 isWifiEnabled() 變成 true。

參數
timeout long:等待時間 (以毫秒為單位)

傳回
boolean 如果逾時前已啟用 Wi-Fi,則為 true,否則為 false

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

waitForWifiEnabled

public abstract boolean waitForWifiEnabled ()

等待 isWifiEnabled() 成為 true,並使用預設逾時。

傳回
boolean 如果逾時前已啟用 Wi-Fi,則為 true,否則為 false

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

waitForWifiState

public abstract boolean waitForWifiState (WifiState... expectedStates)

等待直到出現預期的 Wi-Fi 狀態。

參數
expectedStates WifiState:預期的一或多個 Wi-Fi 狀態

傳回
boolean true (如果發生其中一個預期狀態)。false (如果逾時前未發生任何狀態)

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