繁体   English   中英

如何在Android中主动扫描WiFi

[英]How to active scan WiFi in Android

从Android文档中,我们知道WiFiManager.startScan()调用被动 WiFi扫描。 它通常比主动扫描花费更多时间。 因此,我想使用以下方法调用主动扫描

在先前的WiFiManager.java中,有一个名为startScanActive的隐藏方法。 我们不能直接调用它,但是可以通过java反射调用它。 @hide在Android源代码中是什么意思?

但是,此方法在Android 4.3+中消失了。 然后,如何在Android 4.3+中开始主动WiFi扫描?

谢谢

AFAIK,无法进行主动扫描,因此已从更高的API级别中删除。

这是设备和/或OS版本的相关设置。 例如,在Nexus One上,扫描大约需要一秒钟,而在G1上,扫描需要更长的时间(或在几次扫描后获得新的结果)。

此外,Android会执行被动扫描,它会监听信标。 进行主动扫描会通过发出探测请求并等待探测响应来在网络上造成大量拥塞。

请参阅: android-wifi-active-scansWifiManager

然后,您可以在活动类中使用以下内容:

WifiManager wifiManager =(WifiManager)this.getSystemService(Context.WIFI_SERVICE); wifiManager.setWifiEnabled(true); wifiManager.setWifiEnabled(false);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM