- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我花了好几天时间试图找出我的安卓手机在学校的 wifi 出了什么问题。学校 wifi 是使用 PEAP 的 802.1x EAP。需要用户名和密码。
我有两部 Android 手机,并且在它们上面运行了许多不同的 ROM,所以我知道这不仅仅是 ROM 特定的问题。我目前在 Mytouch 3g fender ed 上运行 2.2.1。我的手机没有数据计划,所以我关闭了数据。我只使用 wifi。
我遇到的问题是,在我连接到 wifi 后,有一段时间一切正常,但很快(可能 15 分钟到一个小时后),我会打开手机,当我看到 wifi 连接时,它说 Authenticating 并且一直卡在那里直到我重置它。如果我尝试使用普通 HTTP 上网,它工作正常,但如果我尝试运行任何需要 wifi 连接的应用程序,他们会给出一个错误,说有网络连接(例如谷歌语音搜索会说“连接问题”)。 Feeds 无法更新,gmail 无法更新等。重置连接后,wifi 再次正常工作。我不确定为什么会这样。我认为这与学校的 wifi 设置方式有关。
但是,为了快速解决该问题,我正在编写一个应用程序来测试连接是否正在验证,如果是则重新关联连接。不过我遇到了问题。
这是查看 wifi 是否正在验证的代码以及一些调试输出:
private void checkWifi() {
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
SupplicantState state = info.getSupplicantState();
Log.d(getClass().getSimpleName(), state.toString());
NetworkInfo.DetailedState state2 = WifiInfo.getDetailedStateOf(info.getSupplicantState());
Log.d(getClass().getSimpleName(), state2.toString());
}
这是日志输出:
D/WifiCheckerService(24732): COMPLETED
D/WifiCheckerService(24732): OBTAINING_IPADDR
无论手机上的 wifi 显示已连接还是正在验证,日志输出都是相同的,这意味着我的程序现在无法区分它是否处于时髦的“身份验证”状态。我需要能够区分以便能够知道何时重置 wifi。非常感谢任何帮助。
最佳答案
试试这个。
ConnectivityManager conn = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo nInfo = conn.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
Log.d("MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE", nInfo.getDetailedState().toString());
Log.d("MY CONNECTIVITY MANAGER: NETWORK.STATE", nInfo.getState().toString());
这是我的输出(如果您在连接时输入了错误的密码)。
D/MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE(24732): AUTHENTICATING D/MY CONNECTIVITY MANAGER: NETWORK.STATE(24732): CONNECTING
第二个输出(在获取 IP 时)。
D/MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE(24732): OBTAINING_IPADDR
D/MY CONNECTIVITY MANAGER: NETWORK.STATE(24732): CONNECTED
第三个输出(成功连接)。
D/MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE(24732): CONNECTED
D/MY CONNECTIVITY MANAGER: NETWORK.STATE(24732): CONNECTED
第四次输出(如果您输入了错误的密码并且无法连接)。
D/MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE(24732): DISCONNECTED
D/MY CONNECTIVITY MANAGER: NETWORK.STATE(24732): DISCONNECTED
第 5 个输出(如果 WIFI 处于空闲状态且已断开连接)。
D/MY CONNECTIVITY MANAGER: NETWORK.DETAILEDSTATE(24732): IDLE
D/MY CONNECTIVITY MANAGER: NETWORK.STATE(24732): DISCONNECTED
//希望对你有帮助
关于将 EAP 与 PEAP 结合使用时,Android 身份验证会陷入僵局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5053068/
我花了好几天时间试图找出我的安卓手机在学校的 wifi 出了什么问题。学校 wifi 是使用 PEAP 的 802.1x EAP。需要用户名和密码。 我有两部 Android 手机,并且在它们上面运行
在过去的几天里,我一直在尝试以编程方式将我的 android 设备连接到企业网络,但没有成功,我一直在网上关注多个示例,但我发现的大多数示例都是针对 EAP(TLS) 网络和我工作的地方是EAP(PE
我正在编写一个应用程序来帮助测试 Android 设备连接到具有不同安全设置(例如 wpa aes peap)的 wlan 的能力。但是,我注意到已发布的 android.net.wifi api 不
我有一块运行 Micropython 固件 v1.8.7 的带有 ESP8266 芯片的电路板。我的要求是通过大学 Wi-Fi 使用 WebREPL,它使用 WPA2 Enterprise EAP-M
我正在开始一个与 WiFi 相关的研究项目,这需要我分析在连接设置期间 WiFi 客户端和 AP 之间的帧交换。 实验设置:我有一台笔记本电脑 M,在监控模式下使用 Wireshark 捕获 WiFi
我是一名优秀的程序员,十分优秀!