android 判断WiFi连接密码错误的方法

WiFi连接的时候何不知道如判断验证失败的方法,根据网上的资料找到方法接收广播
if (action.equals(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION)) {

LogLazy.e("wifi密码错误广播");

int linkWifiResult = intent.getIntExtra(WifiManager.EXTRA_SUPPLICANT_ERROR, 123);

if (linkWifiResult == WifiManager.ERROR_AUTHENTICATING) {

toast("密码错误");

}

}



但是不清楚 intent.getIntExtra(WifiManager.EXTRA_SUPPLICANT_ERROR, 123); 这句话里面的第二个参数是什么意思?,直接拿过来用连接WiFi,验证失败后这个广播也不是每次都收到,不是很清楚要如何准确的收到密码错误的广播?

其实这里本来就有问题的答案呀,你可能没找到所以我就帮你发这个链接咯http://blog.csdn.net/JingleYe/article/details/50416890

 if (action.equals(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION)) {  
    LogLazy.e("wifi密码错误广播");  
    int linkWifiResult = intent.getIntExtra(WifiManager.EXTRA_SUPPLICANT_ERROR, 123);  
    if (linkWifiResult == WifiManager.ERROR_AUTHENTICATING) {  
        toast("密码错误");  
    }  
}  

主要内容:
接收广播 WifiManager.html#SUPPLICANT_STATE_CHANGED_ACTION
里面有一个 EXTRA_SUPPLICANT_ERROR 若其值是 ERROR_AUTHENTICATING 则说明是密码错误

参考
https://developer.android.com/reference/android/net/wifi/WifiManager.html#SUPPLICANT_STATE_CHANGED_ACTION
https://developer.android.com/reference/android/net/wifi/WifiManager.html#ERROR_AUTHENTICATING

wifi密码是正确的,但是验证超时了,WifiManager.ERROR_AUTHENTICATING 同样会返回错误代码 1 。如何精确?

刚接触也碰到了这个问题,你的问题解决了没?

第二个参数是defaultValue,源码对它的描述defaultValue the value to be returned if no value of the desired type is stored with the given name.
是有的时候收不到,毕竟'SUPPLICANT_STATE_CHANGED_ACTION' is deprecated,再做一个超时判定吧.