java.lang.Object | |
↳ | android.net.wifi.WifiManager |
This class provides the primary API for managing all aspects of Wi-Fi connectivity. Get an instance of this class by calling Context.getSystemService(Context.WIFI_SERVICE)
. It deals with several categories of items:
ConnectivityManager
.
嵌套类 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
class | WifiManager.MulticastLock | Allows an application to receive Wifi Multicast packets. | |||||||||
class | WifiManager.WifiLock | Allows an application to keep the Wi-Fi radio awake. |
常量 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
String | ACTION_PICK_WIFI_NETWORK | Activity Action: Pick a Wi-Fi network to connect to. | |||||||||
int | ERROR_AUTHENTICATING | The error code if there was a problem authenticating. | |||||||||
String | EXTRA_BSSID | The lookup key for a String giving the BSSID of the access point to which we are connected. | |||||||||
String | EXTRA_NETWORK_INFO | The lookup key for a NetworkInfo object associated with the Wi-Fi network. |
|||||||||
String | EXTRA_NEW_RSSI | The lookup key for an int giving the new RSSI in dBm. |
|||||||||
String | EXTRA_NEW_STATE | The lookup key for a SupplicantState describing the new state Retrieve with getParcelableExtra(String) . |
|||||||||
String | EXTRA_PREVIOUS_WIFI_STATE | The previous Wi-Fi state. | |||||||||
String | EXTRA_SUPPLICANT_CONNECTED | The lookup key for a boolean that indicates whether a connection to the supplicant daemon has been gained or lost. | |||||||||
String | EXTRA_SUPPLICANT_ERROR | The lookup key for a SupplicantState describing the supplicant error code if any Retrieve with getIntExtra(String, int) . |
|||||||||
String | EXTRA_WIFI_STATE | The lookup key for an int that indicates whether Wi-Fi is enabled, disabled, enabling, disabling, or unknown. | |||||||||
String | NETWORK_IDS_CHANGED_ACTION | The network IDs of the configured networks could have changed. | |||||||||
String | NETWORK_STATE_CHANGED_ACTION | Broadcast intent action indicating that the state of Wi-Fi connectivity has changed. | |||||||||
String | RSSI_CHANGED_ACTION | The RSSI (signal strength) has changed. | |||||||||
String | SCAN_RESULTS_AVAILABLE_ACTION | An access point scan has completed, and results are available from the supplicant. | |||||||||
String | SUPPLICANT_CONNECTION_CHANGE_ACTION | Broadcast intent action indicating that a connection to the supplicant has been established (and it is now possible to perform Wi-Fi operations) or the connection to the supplicant has been lost. | |||||||||
String | SUPPLICANT_STATE_CHANGED_ACTION | Broadcast intent action indicating that the state of establishing a connection to an access point has changed.One extra provides the new SupplicantState . |
|||||||||
int | WIFI_MODE_FULL | In this Wi-Fi lock mode, Wi-Fi will be kept active, and will behave normally, i.e., it will attempt to automatically establish a connection to a remembered access point that is within range, and will do periodic scans if there are remembered access points but none are in range. | |||||||||
int | WIFI_MODE_SCAN_ONLY | In this Wi-Fi lock mode, Wi-Fi will be kept active, but the only operation that will be supported is initiation of scans, and the subsequent reporting of scan results. | |||||||||
String | WIFI_STATE_CHANGED_ACTION | Broadcast intent action indicating that Wi-Fi has been enabled, disabled, enabling, disabling, or unknown. | |||||||||
int | WIFI_STATE_DISABLED | Wi-Fi is disabled. | |||||||||
int | WIFI_STATE_DISABLING | Wi-Fi is currently being disabled. | |||||||||
int | WIFI_STATE_ENABLED | Wi-Fi is enabled. | |||||||||
int | WIFI_STATE_ENABLING | Wi-Fi is currently being enabled. | |||||||||
int | WIFI_STATE_UNKNOWN | Wi-Fi is in an unknown state. |
公有方法 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | addNetwork( WifiConfiguration config)
Add a new network description to the set of configured networks.
|
||||||||||
static int | calculateSignalLevel(int rssi, int numLevels)
Calculates the level of the signal.
|
||||||||||
static int | compareSignalLevel(int rssiA, int rssiB)
Compares two signal strengths.
|
||||||||||
WifiManager.MulticastLock | createMulticastLock( String tag)
Create a new MulticastLock
|
||||||||||
WifiManager.WifiLock | createWifiLock(int lockType, String tag)
Creates a new WifiLock.
|
||||||||||
WifiManager.WifiLock | createWifiLock( String tag)
Creates a new WifiLock.
|
||||||||||
boolean | disableNetwork(int netId)
Disable a configured network.
|
||||||||||
boolean | disconnect()
Disassociate from the currently active access point.
|
||||||||||
boolean | enableNetwork(int netId, boolean disableOthers)
Allow a previously configured network to be associated with.
|
||||||||||
List< WifiConfiguration> | getConfiguredNetworks()
Return a list of all the networks configured in the supplicant.
|
||||||||||
WifiInfo | getConnectionInfo()
Return dynamic information about the current Wi-Fi connection, if any is active.
|
||||||||||
DhcpInfo | getDhcpInfo()
Return the DHCP-assigned addresses from the last successful DHCP request, if any.
|
||||||||||
List< ScanResult> | getScanResults()
Return the results of the latest access point scan.
|
||||||||||
int | getWifiState()
Gets the Wi-Fi enabled state.
|
||||||||||
boolean | isWifiEnabled()
Return whether Wi-Fi is enabled or disabled.
|
||||||||||
boolean | pingSupplicant()
Check that the supplicant daemon is responding to requests.
|
||||||||||
boolean | reassociate()
Reconnect to the currently active access point, even if we are already connected.
|
||||||||||
boolean | reconnect()
Reconnect to the currently active access point, if we are currently disconnected.
|
||||||||||
boolean | removeNetwork(int netId)
Remove the specified network from the list of configured networks.
|
||||||||||
boolean | saveConfiguration()
Tell the supplicant to persist the current list of configured networks.
|
||||||||||
boolean | setWifiEnabled(boolean enabled)
Enable or disable Wi-Fi.
|
||||||||||
boolean | startScan()
Request a scan for access points.
|
||||||||||
int | updateNetwork( WifiConfiguration config)
Update the network description of an existing configured network.
|
[展开]
继承的方法
|
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
来自 class java.lang.Object
|
Activity Action: Pick a Wi-Fi network to connect to.
Input: Nothing.
Output: Nothing.
The error code if there was a problem authenticating.
The lookup key for a String giving the BSSID of the access point to which we are connected. Only present when the new state is CONNECTED. Retrieve with getStringExtra(String)
.
The lookup key for a NetworkInfo
object associated with the Wi-Fi network. Retrieve with getParcelableExtra(String)
.
The lookup key for an int
giving the new RSSI in dBm.
The lookup key for a SupplicantState
describing the new state Retrieve with getParcelableExtra(String)
.
The previous Wi-Fi state.
EXTRA_WIFI_STATE
The lookup key for a boolean that indicates whether a connection to the supplicant daemon has been gained or lost. true
means a connection now exists. Retrieve it with getBooleanExtra(String, boolean)
.
The lookup key for a SupplicantState
describing the supplicant error code if any Retrieve with getIntExtra(String, int)
.
ERROR_AUTHENTICATING
The lookup key for an int that indicates whether Wi-Fi is enabled, disabled, enabling, disabling, or unknown. Retrieve it with getIntExtra(String, int)
.
WIFI_STATE_DISABLED
WIFI_STATE_DISABLING
WIFI_STATE_ENABLED
WIFI_STATE_ENABLING
WIFI_STATE_UNKNOWN
The network IDs of the configured networks could have changed.
Broadcast intent action indicating that the state of Wi-Fi connectivity has changed. One extra provides the new state in the form of a NetworkInfo
object. If the new state is CONNECTED, a second extra may provide the BSSID of the access point, as a String
.
EXTRA_NETWORK_INFO
EXTRA_BSSID
The RSSI (signal strength) has changed.
EXTRA_NEW_RSSI
An access point scan has completed, and results are available from the supplicant. Call getScanResults()
to obtain the results.
Broadcast intent action indicating that a connection to the supplicant has been established (and it is now possible to perform Wi-Fi operations) or the connection to the supplicant has been lost. One extra provides the connection state as a boolean, where true
means CONNECTED.
EXTRA_SUPPLICANT_CONNECTED
Broadcast intent action indicating that the state of establishing a connection to an access point has changed.One extra provides the new SupplicantState
. Note that the supplicant state is Wi-Fi specific, and is not generally the most useful thing to look at if you are just interested in the overall state of connectivity.
EXTRA_NEW_STATE
EXTRA_SUPPLICANT_ERROR
In this Wi-Fi lock mode, Wi-Fi will be kept active, and will behave normally, i.e., it will attempt to automatically establish a connection to a remembered access point that is within range, and will do periodic scans if there are remembered access points but none are in range.
In this Wi-Fi lock mode, Wi-Fi will be kept active, but the only operation that will be supported is initiation of scans, and the subsequent reporting of scan results. No attempts will be made to automatically connect to remembered access points, nor will periodic scans be automatically performed looking for remembered access points. Scans must be explicitly requested by an application in this mode.
Broadcast intent action indicating that Wi-Fi has been enabled, disabled, enabling, disabling, or unknown. One extra provides this state as an int. Another extra provides the previous state, if available.
EXTRA_WIFI_STATE
EXTRA_PREVIOUS_WIFI_STATE
Wi-Fi is disabled.
WIFI_STATE_CHANGED_ACTION
getWifiState()
Wi-Fi is currently being disabled. The state will change to WIFI_STATE_DISABLED
if it finishes successfully.
WIFI_STATE_CHANGED_ACTION
getWifiState()
Wi-Fi is enabled.
WIFI_STATE_CHANGED_ACTION
getWifiState()
Wi-Fi is currently being enabled. The state will change to WIFI_STATE_ENABLED
if it finishes successfully.
WIFI_STATE_CHANGED_ACTION
getWifiState()
Wi-Fi is in an unknown state. This state will occur when an error happens while enabling or disabling.
WIFI_STATE_CHANGED_ACTION
getWifiState()
Add a new network description to the set of configured networks. The networkId
field of the supplied configuration object is ignored.
The new network will be marked DISABLED by default. To enable it, called enableNetwork(int, boolean)
.
config | the set of variables that describe the configuration, contained in a WifiConfiguration object. |
---|
-1
on failure.Calculates the level of the signal. This should be used any time a signal is being shown.
rssi | The power of the signal measured in RSSI. |
---|---|
numLevels | The number of levels to consider in the calculated level. |
Compares two signal strengths.
rssiA | The power of the first signal measured in RSSI. |
---|---|
rssiB | The power of the second signal measured in RSSI. |
Create a new MulticastLock
tag | a tag for the MulticastLock to identify it in debugging messages. This string is never shown to the user under normal conditions, but should be descriptive enough to identify your application and the specific MulticastLock within it, if it holds multiple MulticastLocks. |
---|
WifiManager.MulticastLock
Creates a new WifiLock.
lockType | the type of lock to create. See WIFI_MODE_FULL , and WIFI_MODE_SCAN_ONLY for descriptions of the types of Wi-Fi locks. |
---|---|
tag | a tag for the WifiLock to identify it in debugging messages. This string is never shown to the user under normal conditions, but should be descriptive enough to identify your application and the specific WifiLock within it, if it holds multiple WifiLocks. |
WifiManager.WifiLock
Creates a new WifiLock.
tag | a tag for the WifiLock to identify it in debugging messages. This string is never shown to the user under normal conditions, but should be descriptive enough to identify your application and the specific WifiLock within it, if it holds multiple WifiLocks. |
---|
WifiManager.WifiLock
Disable a configured network. The specified network will not be a candidate for associating. This may result in the asynchronous delivery of state change events.
netId | the ID of the network as returned by addNetwork(WifiConfiguration) . |
---|
true
if the operation succeededDisassociate from the currently active access point. This may result in the asynchronous delivery of state change events.
true
if the operation succeeded Allow a previously configured network to be associated with. If disableOthers
is true, then all other configured networks are disabled, and an attempt to connect to the selected network is initiated. This may result in the asynchronous delivery of state change events.
netId | the ID of the network in the list of configured networks |
---|---|
disableOthers | if true, disable all other networks. The way to select a particular network to connect to is specify true for this parameter. |
true
if the operation succeededReturn a list of all the networks configured in the supplicant. Not all fields of WifiConfiguration are returned. Only the following fields are filled in:
WifiConfiguration
objects.Return dynamic information about the current Wi-Fi connection, if any is active.
WifiInfo
.Return the DHCP-assigned addresses from the last successful DHCP request, if any.
Return the results of the latest access point scan.
Gets the Wi-Fi enabled state.
WIFI_STATE_DISABLED
, WIFI_STATE_DISABLING
, WIFI_STATE_ENABLED
, WIFI_STATE_ENABLING
, WIFI_STATE_UNKNOWN
isWifiEnabled()
Return whether Wi-Fi is enabled or disabled.
true
if Wi-Fi is enabledgetWifiState()
Check that the supplicant daemon is responding to requests.
true
if we were able to communicate with the supplicant and it returned the expected response to the PING message.Reconnect to the currently active access point, even if we are already connected. This may result in the asynchronous delivery of state change events.
true
if the operation succeededReconnect to the currently active access point, if we are currently disconnected. This may result in the asynchronous delivery of state change events.
true
if the operation succeededRemove the specified network from the list of configured networks. This may result in the asynchronous delivery of state change events.
netId | the integer that identifies the network configuration to the supplicant |
---|
true
if the operation succeededTell the supplicant to persist the current list of configured networks.
Note: It is possible for this method to change the network IDs of existing networks. You should assume the network IDs can be different after calling this method.
true
if the operation succeededEnable or disable Wi-Fi.
enabled | true to enable, false to disable. |
---|
true
if the operation succeeds (or if the existing state is the same as the requested state).Request a scan for access points. Returns immediately. The availability of the results is made known later by means of an asynchronous event sent on completion of the scan.
true
if the operation succeeded, i.e., the scan was initiatedUpdate the network description of an existing configured network.
config | the set of variables that describe the configuration, contained in a WifiConfiguration object. It may be sparse, so that only the items that are being changed are non-null . The networkId field must be set to the ID of the existing network being updated. |
---|
networkId
of the supplied WifiConfiguration
on success. -1
on failure, including when the networkId
field of the WifiConfiguration
does not refer to an existing network.