В моем сценарии у меня есть onReceive с Android Q
условием версии. Я подготовил ниже альтернативный код для замены NetworkInfo
. Здесь я использую только Network
. Как выполнить проверку типа сети после состояния сетевого подключения (if(network.getType() == ConnectivityManager.TYPE_WIFI) {})?
.
Код сети
@Override
public void onReceive(final Context context, final Intent intent) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkRequest.Builder builder = new NetworkRequest.Builder();
connectivityManager.registerNetworkCallback(
builder.build(),
new ConnectivityManager.NetworkCallback() {
@Override
public void onAvailable(Network network) {
// Network Available
// if(network.getType() == ConnectivityManager.TYPE_WIFI) { } // How to achieve this using network.
connectToSSID(webssid);
context.unregisterReceiver(webWifiStateListener);
webWifiStateListener = null;
}
@Override
public void onLost(Network network) {
// Network Not Available
}
}
);
}
}