Android 扫描 Wifi 网络

标签 android wifi android-wifi

我正在尝试扫描无线网络,并在网上找到了这个有用的资源。 不幸的是它不起作用,我不知道为什么。我的问题是我不能等 10 分钟才能得到结果——我在几秒钟内就需要它们,并考​​虑在我得到结果后立即将 bool 变量设置为假……好吧,它会永远运行…… . 看起来什么都没有收到。任何想法 ?谢谢。

// -- Sample WiFi implementation - http://groups.google.com/group/android-developers/browse_thread/thread/f722d5f90cfae69
        IntentFilter i = new IntentFilter();
        i.addAction(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION);
            registerReceiver(new BroadcastReceiver(){
                @Override
                public void onReceive(Context c, Intent i){
                    // Code to execute when SCAN_RESULTS_AVAILABLE_ACTION event occurs
                    mWifiManager = (WifiManager) c.getSystemService(Context.WIFI_SERVICE);
                    wireless =  mWifiManager.getScanResults(); // Returns a <list> of scanResults
                    waiting = false;
                }
            }
        ,i);
        // -- End Wifi Sample 


        mWifiManager.startScan();


        while (waiting)  { 
            try {
                Thread.sleep(200);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            Log.d("PROJECT1","Wifi WAITING");
        }

最佳答案

您需要实现一个 BroadcastReceiver 来监听 WifiManager.startScan() 返回的扫描结果。 onReceive() 允许您直接访问扫描结果。 扫描完成并触发 onReceive()...

大约需要 1 秒

关于Android 扫描 Wifi 网络,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2981751/

相关文章:

java - 如何加快 Android 中的 SQLite 数据库插入速度?

Android EditTextPreference - 如何禁用默认对话框中的按钮之一

android - Intent 打开 Wi-Fi Direct 设置

android - 无法取消选中 setMultiChoiceItems 中的 selectedItems

android - 错误 : missing android-support-constraint-layout in AOSP but prebuilts/sdk/current/extras has it

linux - 802.11 Sniffer 捕获分析 deauth 数据包与 wireshark

java - 使用 WLAN 建立从 Android 到 Eclipse 程序的数据通信的最简单方法

c# - Win10 IoT + RPI3 WiFiAdapter 抛出 Access Denied

android - android WifiManager中的Rssi是什么意思

android - 如何通过 wifi 和移动网络 Android 单独获取数据使用?