java - 限制 Android 上列出的可用 WiFi 连接

标签 java android android-wifi

我有一个应用程序,需要连接到我开发的设备提供的网络。该设备提供具有固定前缀(例如“AAB”)的 WiFi 网络。

是否可以将可用的 WiFi 网络限制为包含我的前缀的网络?这样我就只能选择其中一个进行连接。

目前,我只是为 ACTION_PICK_WIFI_NETWORK 创建一个 Intent,它显示了所有可用的网络:

startActivity( new Intent( WifiManager.ACTION_PICK_WIFI_NETWORK ) );

最佳答案

如给定here ,您可以搜索所有可用的 WiFi 连接并根据其 ID 过滤它们,或者根据您的情况,检查它们是否以前缀开头。

引用上面帖子中的代码以进行快速概述:

WifiManager wifiManager = (WifiManager)
context.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
String ssid = wifiInfo.getSSID();
int networkid = wifiInfo.getNetworkId();
Toast.makeText(context, "OK " + ssid, Toast.LENGTH_LONG).show();
Toast.makeText(context, "Network ID  " + networkid,             
Toast.LENGTH_LONG).show();

您还可以使用BSSID作为唯一标识符

希望这有帮助。

关于java - 限制 Android 上列出的可用 WiFi 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44659362/

相关文章:

android - http post请求改变ios中json对象的顺序(ionic 3)

java - 我该如何解决这个错误? (错误: Gradle DSL method not found: 'implementation()' )

Java - 旋转数组

java - 使用处理程序多次触发可运行程序的效果

android.net.wifi.STATE_CHANGE 并不总是在 wifi 切换时触发

android - 在 Android 6 上禁用位置权限似乎会影响 WiFi 参数查询

android - 用 wi-fi 连接两部安卓手机(不带笔记本电脑或接入点)并发送文件

java - 在 flink 流中使用 grok

android - 清除 Android 中的 cookie

java - 将字符串变量的值分配给另一个字符串变量