Added in API level 1

SupplicantState

class SupplicantState : Parcelable
kotlin.Any
   ↳ kotlin.Enum<android.net.wifi.SupplicantState>
   ↳ android.net.wifi.SupplicantState

From

These enumeration values are used to indicate the current wpa_supplicant state. This is more fine-grained than most users will be interested in. In general, it is better to use NetworkInfo.State.

Note, the order of these enum constants must match the numerical values of the state constants in defs.h in wpa_supplicant.

Summary

Inherited constants
Enum values

Association completed.

Trying to associate with a BSS/SSID.

Trying to authenticate with a BSS/SSID

All authentication completed.

This state indicates that client is not associated, but is likely to start looking for an access point.

An Android-added state that is reported when a client issues an explicit DISCONNECT command.

WPA 4-Way Key Handshake in progress.

WPA Group Key Handshake in progress.

Inactive state (wpa_supplicant disabled).

Interface is disabled

A pseudo-state that should normally never be seen.

Scanning for a network.

No connection to wpa_supplicant.

Public methods
Int

Implement the Parcelable interface {@hide}

static Boolean

Returns true if the supplicant state is valid and false otherwise.

Unit
writeToParcel(dest: Parcel, flags: Int)

Implement the Parcelable interface {@hide}

Enum values

ASSOCIATED

Added in API level 1
enum val ASSOCIATED : SupplicantState

Association completed.

This state is entered when the driver reports that association has been successfully completed with an AP. If IEEE 802.1X is used (with or without WPA/WPA2), wpa_supplicant remains in this state until the IEEE 802.1X/EAPOL authentication has been completed.

ASSOCIATING

Added in API level 1
enum val ASSOCIATING : SupplicantState

Trying to associate with a BSS/SSID.

This state is entered when wpa_supplicant has found a suitable BSS to associate with and the driver is configured to try to associate with this BSS in ap_scan=1 mode. When using ap_scan=2 mode, this state is entered when the driver is configured to try to associate with a network using the configured SSID and security policy.

AUTHENTICATING

Added in API level 14
enum val AUTHENTICATING : SupplicantState

Trying to authenticate with a BSS/SSID

This state is entered when wpa_supplicant has found a suitable BSS to authenticate with and the driver is configured to try to authenticate with this BSS.

COMPLETED

Added in API level 1
enum val COMPLETED : SupplicantState

All authentication completed.

This state is entered when the full authentication process is completed. In case of WPA2, this happens when the 4-Way Handshake is successfully completed. With WPA, this state is entered after the Group Key Handshake; with IEEE 802.1X (non-WPA) connection is completed after dynamic keys are received (or if not used, after the EAP authentication has been completed). With static WEP keys and plaintext connections, this state is entered when an association has been completed.

This state indicates that the supplicant has completed its processing for the association phase and that data connection is fully configured. Note, however, that there may not be any IP address associated with the connection yet. Typically, a DHCP request needs to be sent at this point to obtain an address.

DISCONNECTED

Added in API level 1
enum val DISCONNECTED : SupplicantState

This state indicates that client is not associated, but is likely to start looking for an access point. This state is entered when a connection is lost.

DORMANT

Added in API level 1
enum val DORMANT : SupplicantState

An Android-added state that is reported when a client issues an explicit DISCONNECT command. In such a case, the supplicant is not only dissociated from the current access point (as for the DISCONNECTED state above), but it also does not attempt to connect to any access point until a RECONNECT or REASSOCIATE command is issued by the client.

FOUR_WAY_HANDSHAKE

Added in API level 1
enum val FOUR_WAY_HANDSHAKE : SupplicantState

WPA 4-Way Key Handshake in progress.

This state is entered when WPA/WPA2 4-Way Handshake is started. In case of WPA-PSK, this happens when receiving the first EAPOL-Key frame after association. In case of WPA-EAP, this state is entered when the IEEE 802.1X/EAPOL authentication has been completed.

GROUP_HANDSHAKE

Added in API level 1
enum val GROUP_HANDSHAKE : SupplicantState

WPA Group Key Handshake in progress.

This state is entered when 4-Way Key Handshake has been completed (i.e., when the supplicant sends out message 4/4) and when Group Key rekeying is started by the AP (i.e., when supplicant receives message 1/2).

INACTIVE

Added in API level 1
enum val INACTIVE : SupplicantState

Inactive state (wpa_supplicant disabled).

This state is entered if there are no enabled networks in the configuration. wpa_supplicant is not trying to associate with a new network and external interaction (e.g., ctrl_iface call to add or enable a network) is needed to start association.

INTERFACE_DISABLED

Added in API level 14
enum val INTERFACE_DISABLED : SupplicantState

Interface is disabled

This state is entered if the network interface is disabled. wpa_supplicant refuses any new operations that would use the radio until the interface has been enabled.

INVALID

Added in API level 1
enum val INVALID : SupplicantState

A pseudo-state that should normally never be seen.

SCANNING

Added in API level 1
enum val SCANNING : SupplicantState

Scanning for a network.

This state is entered when wpa_supplicant starts scanning for a network.

UNINITIALIZED

Added in API level 1
enum val UNINITIALIZED : SupplicantState

No connection to wpa_supplicant.

This is an additional pseudo-state to handle the case where wpa_supplicant is not running and/or we have not been able to establish a connection to it.

Public methods

describeContents

fun describeContents(): Int

Implement the Parcelable interface {@hide}

Return
Int a bitmask indicating the set of special object types marshaled by this Parcelable object instance. Value is either 0 or android.os.Parcelable#CONTENTS_FILE_DESCRIPTOR

isValidState

Added in API level 1
static fun isValidState(state: SupplicantState!): Boolean

Returns true if the supplicant state is valid and false otherwise.

Parameters
state SupplicantState!: The supplicant state
Return
Boolean true if the supplicant state is valid and false otherwise.

writeToParcel

fun writeToParcel(
    dest: Parcel,
    flags: Int
): Unit

Implement the Parcelable interface {@hide}

Parameters
dest Parcel: The Parcel in which the object should be written. This value cannot be null.
flags Int: Additional flags about how the object should be written. May be 0 or PARCELABLE_WRITE_RETURN_VALUE. Value is either 0 or a combination of android.os.Parcelable#PARCELABLE_WRITE_RETURN_VALUE, and android.os.Parcelable.PARCELABLE_ELIDE_DUPLICATES