Android Network judgment tool (APN + WIFI) and androidapn

Source: Internet
Author: User

Android Network judgment tool (APN + WIFI) and androidapn

Public class NetWorkHelper {private static String LOG_TAG = "NetWorkHelper"; public static Uri uri = Uri. parse ("content: // telephony/carriers");/*** determine whether a network connection exists */public static boolean isNetworkAvailable (Context context) {ConnectivityManager connectivity = (ConnectivityManager) context. getSystemService (Context. CONNECTIVITY_SERVICE); if (connectivity = null) {Log. w (LOG_TAG, "couldn't get connectivity m Anager ");} else {NetworkInfo [] info = connectivity. getAllNetworkInfo (); if (info! = Null) {for (int I = 0; I <info. length; I ++) {if (info [I]. isAvailable () {Log. d (LOG_TAG, "network is available"); return true ;}}} Log. d (LOG_TAG, "network is not available"); return false;} public static boolean checkNetState (Context context) {boolean netstate = false; ConnectivityManager connectivity = (ConnectivityManager) context. getSystemService (Context. CONNECTIVITY_SERVICE); if (connectivity! = Null) {NetworkInfo [] info = connectivity. getAllNetworkInfo (); if (info! = Null) {for (int I = 0; I <info. length; I ++) {if (info [I]. getState () = NetworkInfo. state. CONNECTED) {netstate = true; break ;}}} return netstate;}/*** determines whether the network is roaming */public static boolean isNetworkRoaming (Context context) {ConnectivityManager connectivity = (ConnectivityManager) context. getSystemService (Context. CONNECTIVITY_SERVICE); if (connectivity = null) {Log. w (LOG_TAG, "couldn't get connectivit Y manager ");} else {NetworkInfo info = connectivity. getActiveNetworkInfo (); if (info! = Null & info. getType () = ConnectivityManager. TYPE_MOBILE) {TelephonyManager tm = (TelephonyManager) context. getSystemService (Context. TELEPHONY_SERVICE); if (tm! = Null & tm. isNetworkRoaming () {Log. d (LOG_TAG, "network is roaming"); return true;} else {Log. d (LOG_TAG, "network is not roaming") ;}} else {Log. d (LOG_TAG, "not using mobile network") ;}} return false ;} /*** determine whether the MOBILE network is available ** @ param context * @ return * @ throws Exception */public static boolean isMobileDataEnable (Context context) throws Exception {ConnectivityManager connectivityManager = (Connectivi TyManager) context. getSystemService (Context. CONNECTIVITY_SERVICE); boolean isMobileDataEnable = false; isMobileDataEnable = connectivityManager. getNetworkInfo (ConnectivityManager. TYPE_MOBILE ). isConnectedOrConnecting (); return isMobileDataEnable;}/*** determines whether wifi is available * @ param context * @ return * @ throws Exception */public static boolean isWifiDataEnable (Context context) throws Exception {ConnectivityMana Ger connectivityManager = (ConnectivityManager) context. getSystemService (Context. CONNECTIVITY_SERVICE); boolean isWifiDataEnable = false; isWifiDataEnable = connectivityManager. getNetworkInfo (ConnectivityManager. TYPE_WIFI ). isConnectedOrConnecting (); return isWifiDataEnable;}/*** set the Mobile network switch ** @ param context * @ param enabled * @ throws Exception */public static void setMobileDataEnabled (Context con Text, boolean enabled) throws Exception {APNManager apnManager = APNManager. getInstance (context); List <APN> list = apnManager. getAPNList (); if (enabled) {for (APN apn: list) {ContentValues cv = new ContentValues (); cv. put ("apn", apnManager. matchAPN (apn. (apn); cv. put ("type", apnManager. matchAPN (apn. type); context. getContentResolver (). update (uri, cv, "_ id =? ", New String [] {apn. apnId}) ;}} else {for (APN apn: list) {ContentValues cv = new ContentValues (); cv. put ("apn", apnManager. matchAPN (apn. apn) + "mdev"); cv. put ("type", apnManager. matchAPN (apn. type) + "mdev"); context. getContentResolver (). update (uri, cv, "_ id =? ", New String [] {apn. apnId });}}}}

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.