【问题标题】:Connect to specific network in Android连接到 Android 中的特定网络
【发布时间】:2016-09-17 10:23:43
【问题描述】:

我正在尝试构建一个连接到餐厅网络并获取菜单和定价 (Wifi) 的 Android 应用程序。但是当我打开应用程序时,我想列出在此应用程序中注册的 Wifi 网络,而不是所有可用网络。有没有办法建立这个?提前致谢。

【问题讨论】:

    标签: android android-wifi android-networking


    【解决方案1】:

    是的,您可以扫描可用的 WiFi 网络并仅向您的用户显示这些 WiFi 网络的选择。在 ListView 中显示这些网络,当用户点击一个项目时,您将与之连接。

    您在onReceive 中收到可用网络,在这里您可以通过ScanResult 类的任何属性进行选择:

    private class WifiScanReceiver extends BroadcastReceiver {
        public void onReceive(Context c, Intent intent) {
            List<ScanResult> wifiScanList = wifi.getScanResults();
            for (ScanResult wifi : wifiScanList) {
                // add wifi here to your own list depending on any property of ScanResult, e.g.:
                if (wifi.SSID.contains("Restaurant")) {
                   ...
                }
            }
        }
    }
    

    【讨论】:

    • 感谢您的回答。如何指定选择网络的条件。例如,有一个名为 Xender(本地文件共享应用程序)的应用程序,其中如果您选择接收选项,您将只能看到其他 Xender 网络。我正在寻找类似的东西。我该如何实现?提前谢谢。
    • 我更新了我的答案。您可以在ScanResult 类的任何属性上指定条件。
    猜你喜欢
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    • 2020-12-26
    • 2012-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多