我可以让 Android 只扫描特定的 wifi 网络吗?
Can I make Android only scan for certain wifi networks?
我正在开发一个应用程序来配置公司开发的多个设备。每个设备都会打开一个接入点,要配置它,我需要连接到每个设备。
当该地区有许多可用的 wifi 网络时,我遇到了问题,因为我的 Android 设备不断失去与要配置的设备的连接,这会中断进程。我已将广播接收器配置为在连接断开时重新连接到设备,但这还不够。
我想知道的是,是否有办法 "ignore" 所有不是来自设备的可用网络进行配置,以改进我的配置过程。
抱歉英语不好。谢谢
您不能在 android 设置中隐藏网络,并且从 android 10 (targetsdk 29) 开始,您不能强制从您的应用程序连接到 wifi。
android 10 及更高版本的设备可以使用 Wi-Fi suggestion API 自动将 wifi 凭据添加到系统设置并将其显示为建议网络。这也将创建一个通知:
在另一个 post:
中查看我的 中的示例
// This only works with Android 10 and up (targetsdk = 29 and higher):
import android.net.wifi.WifiManager
import android.net.wifi.WifiNetworkSuggestion
...
val wifiManager = getSystemService(WIFI_SERVICE) as WifiManager
val networkSuggestion = WifiNetworkSuggestion.Builder()
.setSsid("MyWifi")
.setWpa2Passphrase("123Password")
.build()
val list = arrayListOf(networkSuggestion)
wifiManager.addNetworkSuggestions(list)
我正在开发一个应用程序来配置公司开发的多个设备。每个设备都会打开一个接入点,要配置它,我需要连接到每个设备。
当该地区有许多可用的 wifi 网络时,我遇到了问题,因为我的 Android 设备不断失去与要配置的设备的连接,这会中断进程。我已将广播接收器配置为在连接断开时重新连接到设备,但这还不够。
我想知道的是,是否有办法 "ignore" 所有不是来自设备的可用网络进行配置,以改进我的配置过程。
抱歉英语不好。谢谢
您不能在 android 设置中隐藏网络,并且从 android 10 (targetsdk 29) 开始,您不能强制从您的应用程序连接到 wifi。
android 10 及更高版本的设备可以使用 Wi-Fi suggestion API 自动将 wifi 凭据添加到系统设置并将其显示为建议网络。这也将创建一个通知:
在另一个 post:
中查看我的// This only works with Android 10 and up (targetsdk = 29 and higher):
import android.net.wifi.WifiManager
import android.net.wifi.WifiNetworkSuggestion
...
val wifiManager = getSystemService(WIFI_SERVICE) as WifiManager
val networkSuggestion = WifiNetworkSuggestion.Builder()
.setSsid("MyWifi")
.setWpa2Passphrase("123Password")
.build()
val list = arrayListOf(networkSuggestion)
wifiManager.addNetworkSuggestions(list)