安卓手机上使用Linux和Python测量Wifi信号强度水平

3

如何在连接到 Linux 的 Android 手机上获取 Wifi 信号强度?我用 usb 将我的 Android 手机连接到了 Linux 上。我使用 adb 模块与手机通信,“adb shell”访问 Android shell 并搜索文件或目录以获取 Wifi 信号强度级别。我想使用 popen 模块从 Python 中运行一个 Linux 命令。


adb shell "dumpsys | grep RSSI:" 的输出可能很难从 Python 子进程中解析。你最简单的方法是吸取并修改我链接到的问题中的一些代码,并将其安装在你的手机上。然后从 subprocess.call() 调用它。 - Niall Cosgrove
谢谢,我明白了。 - Search solution
1个回答

2
Android会将WiFi信号强度作为RSSI值提供给您。这将是一个介于-100和0 dBm之间的数字,其中0表示最强的信号,-100表示最弱的信号。
通过adb shell查找RSSI的快速简便方法是使用dumpsys
例如:
adb shell "dumpsys | grep RSSI:" 如果您想编写一个更具针对性的工具,则值得阅读一些相关问题getting-wifi-signal-strength-in-androidhow-to-get-the-connection-strength-of-wifi-access-points
"WifiManager.startScan()"和"WifiManager.getScanResults()"是用于这个功能的API调用。"

我有另一个问题。我想以百分比的形式找到Wifi信号强度级别,因为使用adb shell "dumpsys | grep RSSI:"命令只能获得dbm信号强度。 - Search solution
@search-solution 你自己解决这个问题需要采取哪些步骤? - Niall Cosgrove

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接