- Manifest
<manifest >
<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE" />
...
</manifest>- Android 9 or Oldest
Not Realtime
ConnectivityManagercm = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
booleanisConnect = cm.getActiveNetworkInfo() != null && cm.getActiveNetworkInfo().isConnected();
Log.d(TAG, "startNetworkCalilback: "+isConnect);- Android 10
Realtime every connection connect or not
ConnectivityManagercm = (ConnectivityManager) getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkRequest.Builderbuilder = newNetworkRequest.Builder();
cm.registerNetworkCallback(builder.build(), newConnectivityManager.NetworkCallback(){
@OverridepublicvoidonAvailable(@NonNullNetworknetwork) {
super.onAvailable(network);
Log.d(TAG, "onAvailable: true");
}
@OverridepublicvoidonLost(@NonNullNetworknetwork) {
super.onLost(network);
Log.d(TAG, "onAvailable: false");
}
});Copyright 2020 M. Fadli Zein