Last active
March 20, 2020 10:37
-
-
Save AhnMo/257e64e9413e0c54ae23b4def387cc65 to your computer and use it in GitHub Desktop.
Android Network State Check, `android.permission.ACCESS_NETWORK_STATE` permission required.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This method was deprecated in API level 28 | |
// https://developer.android.com/reference/android/net/NetworkInfo | |
import android.net.ConnectivityManager; | |
import android.net.NetworkInfo; | |
final ConnectivityManager connMgr = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE); | |
final NetworkInfo wifi = connMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI); | |
final NetworkInfo mobile = connMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE); | |
if (wifi.isConnectedOrConnecting()) { | |
output.setText("Network Type: WIFI"); | |
} else if (mobile.isConnectedOrConnecting()) { | |
output.setText("Network Type: Data"); | |
} else { | |
output.setText("Network Type: Unknown"); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This method was deprecated in API level 28. | |
// https://developer.android.com/reference/android/net/NetworkInfo | |
import android.net.ConnectivityManager; | |
import android.net.NetworkInfo; | |
final ConnectivityManager connMgr = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE); | |
final NetworkInfo activeNetwork = connMgr.getActiveNetworkInfo(); | |
if (activeNetwork == null) { | |
output.setText("Network Type: Unknown"); | |
return; | |
} | |
int networkType = activeNetwork.getType(); | |
switch (networkType) { | |
case ConnectivityManager.TYPE_WIFI: | |
output.setText("Network Type: WIFI"); | |
break; | |
case ConnectivityManager.TYPE_MOBILE: | |
output.setText("Network Type: Data"); | |
break; | |
default: | |
output.setText("Network Type: Other"); | |
break; | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import android.net.ConnectivityManager; | |
import android.net.Network; | |
import android.net.NetworkCapabilities; | |
final ConnectivityManager connMgr = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE); | |
final Network n = connMgr.getActiveNetwork(); | |
final NetworkCapabilities nc = connMgr.getNetworkCapabilities(n); | |
if (nc.hasTransport(NetworkCapabilities.TRANSPORT_CELLULAR)) { | |
output.setText("Network Type: Data"); | |
} else if (nc.hasTransport(NetworkCapabilities.TRANSPORT_WIFI)) { | |
output.setText("Network Type: WIFI"); | |
} else { | |
// while VPN connected, the result is here | |
output.setText("Network Type: Unknown"); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import android.net.ConnectivityManager; | |
import android.net.Network; | |
import android.net.NetworkCapabilities; | |
final ConnectivityManager connMgr = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE); | |
final Network n = connMgr.getActiveNetwork(); | |
final NetworkCapabilities nc = connMgr.getNetworkCapabilities(n); | |
if (nc.hasTransport(NetworkCapabilities.TRANSPORT_VPN)) { | |
output.setText("VPN Connected: True"); | |
} else { | |
output.setText("VPN Connected: False"); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment