首页 文章

Android WifiManager - stopScan

提问于
浏览
1

使用Android的WifiManager扫描可用的Wifi网络很容易 .

  • 通过 context.getSystemService 获取WifiManager的句柄

  • 创建一个意图

  • 创建广播接收器

  • 以上述意图注册该接收器

  • 等等

  • 循环扫描结果

我没有意识到的是,这个过程一旦开始就一直在滚动 . 据我所知,阻止它的唯一方法是取消注册有问题的广播接收器 .

  • 这是停止扫描wifi网络的唯一且正确的方法吗?

  • 如果是这样,真的没有必要发出类似WifiManager.stopScan(它似乎不存在)的东西吗?

我假设设备默认扫描无线网络,所以稍后我可以使用相同的WifiManger手柄获取可用网络的新列表 .

1 回答

  • 2

    正如您所假设的那样,操作系统无论如何都在跟踪WiFi事件,通过使用WiFiManager,您只需订阅应用程序即可接收某些类型的通知 .

    如果您的应用程序不再对它们感兴趣,则应取消注册应用程序接收器,避免对WiFi事件进行不必要的上下文切换 .

    WifiManager的引用不是很具描述性,但您可以在ConenctivtyManager参考中找到有关操作系统的一些提示:https://developer.android.com/reference/android/net/ConnectivityManager.html

相关问题