首页 > 解决方案 > Wificonfiguration 已弃用 Android 10

问题描述

Wifi 配置29 Android 版本弃用。我想使用 WIFI 共享文件,但没有可以用于此目的的库。因此,如果有人对此问题有解决方案,请分享

WifiConfiguration wc = new WifiConfiguration(); 
wc.SSID = "\"SSID_NAME\""; //IMP! This should be in Quotes!!
wc.hiddenSSID = true;
boolean res1 = wifiManag.setWifiEnabled(true);
int res = wifi.addNetwork(wc);
Log.d("WifiPreference", "add Network returned " + res );
boolean es = wifi.saveConfiguration();
Log.d("WifiPreference", "saveConfiguration returned " + es );
boolean b = wifi.enableNetwork(res, true); 

有没有我可以使用的 WifiConfiguration 替代品!

标签: ftpandroid-wifiwifimanagerdata-sharingwifi

解决方案


WifiConfiguration 在 API 级别 29 中已弃用。现在,WifiNetworkSpecifier.Builder 解决了我的问题。

WifiNetworkSpecifier wifiNetworkSpecifier = new WifiNetworkSpecifier.Builder()
            .setSsid(ssid)
            .setWpa2Passphrase(password)
            .build();
NetworkRequest networkRequest = new NetworkRequest.Builder()
            .addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
            .setNetworkSpecifier(wifiNetworkSpecifier)
            .build();
ConnectivityManager connectivityManager = (ConnectivityManager)this.getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
connectivityManager.requestNetwork(networkRequest, new ConnectivityManager.NetworkCallback());

推荐阅读