我正在构建一个应用程序,读取每个可用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。即configs是一个不完整的列表。
我不知道如何得到WifiConfiguration中的信号强度。
顺便说一下,我使用的是HTC英雄和Android 1.5。

最佳答案

根据android api文档WifiManager.getConfiguredNetworks()没有填充信号强度参数。此数据仅表示记住的访问点设置,而不是可见的访问点设置。
要获得实际可见的网络,您必须调用WifiManager.startScan()启动WiFi无线电扫描,并在一段时间后调用WifiManager.getScanResults()以获得扫描结果。

关于android - 如何获得Wifi接入点的连接强度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3437694/

10-10 09:47