Android 为什么我不能从scanResults中获得SSID?我如何获得它?

Android 为什么我不能从scanResults中获得SSID?我如何获得它?,android,android-wifi,Android,Android Wifi,我正在写一个代码来扫描android上所有可用的Wifi网络。扫描后,我想显示SSID以及网络是否打开/wep/wpa/wpa2安全。我的女生做这件事的理由如下: private ListView lv; List<ScanResult> scanList; private void getWifiNetworksList(){ IntentFilter filter = new IntentFilter(); filter.addAction(Wif

我正在写一个代码来扫描android上所有可用的Wifi网络。扫描后,我想显示SSID以及网络是否打开/wep/wpa/wpa2安全。我的女生做这件事的理由如下:

private ListView lv;
List<ScanResult> scanList;
private void getWifiNetworksList(){
        IntentFilter filter = new IntentFilter();
        filter.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
        final WifiManager wifiManager = (WifiManager)getApplicationContext().getSystemService(Context.WIFI_SERVICE);
        registerReceiver(new BroadcastReceiver() {
            @Override @SuppressLint("UseValueOf")
            public void onReceive(Context context, Intent intent){
               // sb = new StringBuilder();
                scanList = wifiManager.getScanResults();
                sb.append("\nNumber of Wifi Connections: " + scanList.size() + "\n\n");
                for(int i = 0; i < scanList.size(); i++){
                    SSIDList.add(scanList.get(i).SSID + "\n" + scanList.get(i).capabilities);
                }
                final ArrayAdapter<String> adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.listlayout, R.id.listTextView, SSIDList);
                lv.setAdapter(adapter);                
        }, filter);
        wifiManager.startScan();
    }

然而,在我的扫描结果中,我没有得到任何SSID。不过,我能够看到这些功能。我不知道为什么会这样。有谁能告诉我出了什么问题,我该如何修复它吗?

我看不到onReceive的结束括号,你说了吗?关于这个问题,可能是因为网络被隐藏了Denna,我看到了很多功能,但没有SSID。这就是我的意思,可能对于隐藏网络来说,这些功能确实会出现,但ssid不会,诺托克会同意这一点。但当我使用Android的Wifi手动扫描时,即从设置中,我看到一些未隐藏的Wifi。