我需要检测缺少任何WPA或WEP保护的wifi网络是否真的是一个可以上网的可用wifi热点。换句话说,我需要辨别标准的免费热点和T-mobile热点之类的东西,这些热点是不安全的网络,但需要通过浏览器窗口登录。
我考虑过向我们的服务器发送ping并检查响应,但是如果ping成功,怎么知道他们还没有刚刚登录(例如在这种情况下,如果他们有一个T-mobile帐户并且以前登录过。)
如果重要,它是一个Android应用程序。
答案 0 :(得分:0)
我建议使用wireshark或类似的东西记录登录过程...也许那时您可以提取有关登录系统如何工作的模式,并相应地编写您的程序。 我前段时间遇到过类似的系统,我认为在这种情况下系统会“滥用”DNS系统以重定向到登录页面。
在任何情况下,我都不确定(由于完全无知)你可以用android SDK做多少...
我不记得de WiFi广播发送有关如何或是否连接到互联网的任何信息,但也许有一些模式
答案 1 :(得分:0)
为什么你需要知道它是否是HotSpot? 如果他们已登录到付费的HotSpot并且可以访问您的服务器,那么呢?
我认为您不可能通过发送或监控网络流量来识别不安全的接入点和已登录的付费接入点。
如果确实需要这样做,最好的选择是查看所连接的WLAN网络的SSID,并将其与已知的付费SSID列表进行匹配,例如“tmobile”或“starbucks”等。
答案 2 :(得分:0)
请参阅我对这个类似问题的回答: