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,再做一个超时判定吧.