Когда указанный Wi-Fi автоматически подключается в моем приложении на android 10, Wi-Fi может быть подключен нормально.
Но к сети невозможно получить доступ, равно как и к локальной сети.
@RequiresApi(api = Build.VERSION_CODES.Q)
public void connectAboveQ(String ssid, String bssid, String password) {
NetworkSpecifier specifier = new WifiNetworkSpecifier.Builder()
.setSsidPattern(new PatternMatcher(ssid, PatternMatcher.PATTERN_PREFIX))
.setBssid(MacAddress.fromString(bssid))
.setWpa2Passphrase(password)
.build();
NetworkRequest request = new NetworkRequest.Builder()
.addCapability(NetworkCapabilities.NET_CAPABILITY_NOT_VPN)
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.setNetworkSpecifier(specifier)
.build();
ConnectivityManager connectivityManager =
(ConnectivityManager) mContext.getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
ConnectivityManager.NetworkCallback networkCallback =
new ConnectivityManager.NetworkCallback() {
@Override
public void onAvailable(@NonNull Network network) {
super.onAvailable(network);
Log.d(TAG, "onAvailable: connect success");
}
@Override
public void onUnavailable() {
super.onUnavailable();
Log.d(TAG, "onUnavailable: connect failed");
}
};
if (connectivityManager != null) {
connectivityManager.requestNetwork(request, networkCallback);
}
}