首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android程序中实时获取路由器的wifi信号强度?

如何在android程序中实时获取路由器的wifi信号强度?
EN

Stack Overflow用户
提问于 2014-04-29 18:33:35
回答 2查看 966关注 0票数 0

使用wifimanger中的BroadcastReceiver(),我可以获得每4-5秒的RSSI强度。但我需要实时的。我能实时获得力量吗?

EN

回答 2

Stack Overflow用户

发布于 2014-04-29 19:12:16

最好的方法是使用WifiManager getScanResults开始扫描

代码语言:javascript
复制
final WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
List<ScanResult> results = wifi.getScanResults();

但是,请注意,它返回的最新结果可能早于或迟于4-5秒之前。但至少你得到了最新的结果。

编辑

您无法实时获得信号强度结果,因为没有连续扫描。

如有必要,您可以使用startScan启动扫描,但您必须等待扫描完成时发送的异步事件。

票数 0
EN

Stack Overflow用户

发布于 2015-06-02 21:09:20

我也在试着做同样的事情,我找到了一个不错的解决方案。

如果您使用异步任务,并运行一个在每次迭代中获取更新的RSSI的循环,则可以使用onProgressUpdate()更新UI。

我在循环中添加了一个Thread.sleep(500),所以它每半秒更新一次。

如果你有更多的问题,我很乐意帮助你。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23362173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档