我希望能够检测附近是否有 WIFI 点。我使用WifiManager.startScan()
方法,我可以使 SCAN_RESULTS_AVAILABLE_ACTION 意图触发,虽然我可以获得 Wifi 点结果WifiManager.getScanResults()
,但这只会发生一次。例如,附近有名为 A、B、C 的 wifi 热点。我打电话WifiManager.startScan()
,我找到了wifi点A,B,C。但是,在此之后,如果附近出现另一个名为 D 的 wifi 热点,我就看不到它了。在这种情况下,我怎样才能捕捉到 wifi 点 D?我在下面的相关代码。我会很感激你的帮助。
tManager.startScan();
if (WifiManager.SCAN_RESULTS_AVAILABLE_ACTION.equals(action)) {
Log.i("WiFiDirectBrdcastRcvr", "FOUND WIFI SPOT");
List<ScanResult> wifiScanList = tManager.getScanResults();
wifis = new String[wifiScanList.size()];
Log.i("WiFiDirectBrdcastRcvr", "Device found " + wifiScanList.size()+" WIFI spots");
for(int i = 0; i < wifiScanList.size(); i++){
wifis[i] = ((wifiScanList.get(i)).toString());
Log.i("WiFiDirectBrdcastRcvr", "Spot" + i + " is: " + wifis[i]);
}
}