我正在构建一个应用程序来读取每个可用 Wifi 接入点的信号强度。
我写过这样的代码:
wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
// Get WiFi status
WifiInfo info = wifi.getConnectionInfo();
textStatus.append("\n\nWiFi Status: " + info.toString());
// List available networks
List<WifiConfiguration> configs = wifi.getConfiguredNetworks();
但是,我有两个问题:
调试时,
configs
只包含一个连接。但是,我可以看到系统的 wifi 设置中有几个可用的 AP。 IE。configs
是一个不完整的列表。我不知道如何在
WifiConfiguration
中获取信号强度。
顺便说一句,我使用的是 HTC Hero 和 Android 1.5。
最佳答案
根据 Android API 文档 WifiManager.getConfiguredNetworks()不填写信号强度参数。此数据仅代表记住的接入点设置,而不是可见的设置。
要获得实际可见的网络,您必须调用 WifiManager.startScan()启动 WiFi radio 扫描和 WifiManager.getScanResults()一段时间后得到扫描结果。
关于android - 如何获取Wifi接入点的连接强度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3437694/