Android 是否有方法访问以前发现的Wi-Fi接入点?

Android 是否有方法访问以前发现的Wi-Fi接入点?,android,networking,wifi,discovery,Android,Networking,Wifi,Discovery,在Android中,我使用的是wifi.startScan()每X秒手动启动一次Wi-Fi扫描,然后将所有找到的条目存储到BroadcastReceiver中的ScanResult列表中。这种方法是耗能的 据我所知,Android无论如何都会扫描Wi-Fi发现。有没有一种方法可以让我访问Android捕获的附近接入点 您可以使用(例如,在活动的onCreate()中) MyReceiver.java @Override public void onReceive(Context context,

在Android中,我使用的是
wifi.startScan()
每X秒手动启动一次Wi-Fi扫描,然后将所有找到的条目存储到BroadcastReceiver中的ScanResult列表中。这种方法是耗能的

据我所知,Android无论如何都会扫描Wi-Fi发现。有没有一种方法可以让我访问Android捕获的附近接入点

您可以使用(例如,在活动的
onCreate()
中)

MyReceiver.java

@Override
public void onReceive(Context context, Intent intent) {
    WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
    // You can get the results here of the built in android wifi scan
    wifiManager.getScanResults();
}
请记住,您需要在AndroidManifest.xml

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />


不调用getScanResults()获取扫描结果如何?有没有办法注册一个在更新最新接入点扫描结果时会触发的接收器?对不起,我弄错了什么。我已经编辑了我的答案,所以应该更清楚。只需在“android.net.wifi.SCAN_RESULTS”上注册一个接收器,然后在接收器中获取ScanResults()
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />