How to encapsulate a network detection class in Android
This article will explain in detail how to encapsulate a network detection class in Android. The content of the article is of high quality, so the editor will share it with you for reference. I hope you will have a certain understanding of the relevant knowledge after reading this article.
Let's create a new class for networkUtils
Whether the network is available
Public static boolean isNetworkAvailable (Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context
.getSystemService (Context.CONNECTIVITY_SERVICE)
If (connectivity = = null) {
} else {
NetworkInfo [] info = connectivity.getAllNetworkInfo ()
If (info! = null) {
For (int I = 0; I
< info.length; i++) { if (info[i].getState() == NetworkInfo.State.CONNECTED) { return true; } } } } return false; } Gps是否打开 public static boolean isGpsEnabled(Context context) { LocationManager locationManager = ((LocationManager) context .getSystemService(Context.LOCATION_SERVICE)); List accessibleProviders = locationManager.getProviders(true); return accessibleProviders != null && accessibleProviders.size() >0
}
Whether wifi is open or not
Public static boolean isWifiEnabled (Context context) {
ConnectivityManager mgrConn = (ConnectivityManager) context
.getSystemService (Context.CONNECTIVITY_SERVICE)
TelephonyManager mgrTel = (TelephonyManager) context
.getSystemService (Context.TELEPHONY_SERVICE)
Return ((mgrConn.getActiveNetworkInfo ()! = null & & mgrConn
.getActiveNetworkInfo () .getState () = = NetworkInfo.State.CONNECTED) | | mgrTel
.getNetworkType () = = TelephonyManager.NETWORK_TYPE_UMTS)
}
Determine whether the current network is a wifi network
Public static boolean isWifi (Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService (Context.CONNECTIVITY_SERVICE)
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo ()
If (activeNetInfo! = null
& & activeNetInfo.getType () = = ConnectivityManager.TYPE_WIFI) {
Return true
}
Return false
}
Determine whether the current network is a 3G network
Public static boolean isMonet (Context context) {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService (Context.CONNECTIVITY_SERVICE)
NetworkInfo activeNetInfo = connectivityManager.getActiveNetworkInfo ()
If (activeNetInfo! = null
& & activeNetInfo.getType () = = ConnectivityManager.TYPE_MOBILE) {
Return true
}
Return false
}
Detection network
Public static boolean checkNet (Context context) {
Try {
ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService (Context.CONNECTIVITY_SERVICE)
If (connectivity! = null) {
NetworkInfo info = connectivity.getActiveNetworkInfo ()
If (info! = null & & info.isConnected ()) {
If (info.getState ()) = = NetworkInfo.State.CONNECTED) {
Return true
}
}
}
} catch (Exception e) {
Return false
}
Return false
}
On how to encapsulate a network detection class in Android to share here, I hope the above content can be of some help to you, can learn more knowledge. If you think the article is good, you can share it for more people to see.