Android 安卓系统中的RSSI测量!!从Wifi扫描结果更新它!!如何?

Android 安卓系统中的RSSI测量!!从Wifi扫描结果更新它!!如何?,android,android-wifi,Android,Android Wifi,我正在做这个应用程序,是我从以前选择的AP中获得RSSI测量值(在下面的代码中声明的“recebidos”变量中检索这些值!),但是在广播接收中扫描之后,应用程序没有更新RSSI值,它只是一直返回以前的值!!! 这段代码有什么问题,我不能将getScanResults与WifiManager.SCAN\u RESULTS\u AVAILABLE\u ACTION一起使用吗 请帮帮我 private final BroadcastReceiver wifiReceiver = new Broadc

我正在做这个应用程序,是我从以前选择的AP中获得RSSI测量值(在下面的代码中声明的“recebidos”变量中检索这些值!),但是在广播接收中扫描之后,应用程序没有更新RSSI值,它只是一直返回以前的值!!! 这段代码有什么问题,我不能将getScanResults与
WifiManager.SCAN\u RESULTS\u AVAILABLE\u ACTION一起使用吗

请帮帮我

private final BroadcastReceiver wifiReceiver = new BroadcastReceiver()
        {
      @Override
      public void onReceive(Context ctx, Intent intent)
      {
          listaAP=wifiManager.getScanResults();


          recebidos=nivel.split("SP1");

          StringBuffer scanList = new StringBuffer();
          if (listaAP != null) {
              for (int i = listaAP.size() - 1; i >= 0; i--) {
                  final ScanResult scanResult = listaAP.get(i);

                  if (scanResult == null) {
                      continue;
                  }

                  if (TextUtils.isEmpty(scanResult.BSSID)) {
                      continue;
                  }

                  scanList.append("SP1ID:"+scanResult.BSSID+"RSSI"+scanResult.level);

                  }

              results=scanList.toString().split("SP1");

              for(int z=0;z<results.length;z++)
              {
                  for(int x=0;x<recebidos.length;x++)
                  {
                  if(results[z].compareTo(recebidos[x])==0)
                  {
                      textRssi.append(results[z]);
                  }

                  }
              }

                   }}};
private final BroadcastReceiver wifiReceiver=new BroadcastReceiver()
{
@凌驾
公共void onReceive(上下文ctx、意图)
{
listaAP=wifiManager.getScanResults();
recebidos=nivel.split(“SP1”);
StringBuffer扫描列表=新建StringBuffer();
如果(listaAP!=null){
对于(int i=listaAP.size()-1;i>=0;i--){
最终扫描结果ScanResult=listaAP.get(i);
if(scanResult==null){
继续;
}
if(TextUtils.isEmpty(scanResult.BSSID)){
继续;
}
追加(“SP1ID:+scanResult.BSSID+“RSSI”+scanResult.level”);
}
结果=scanList.toString().split(“SP1”);
对于(int z=0;z您应该调用或startScanActive()来强制进行另一次扫描-除非您定期调用,否则它不会更新数据