/*** Get access to the Internet * *@paramMcontext *@return */ Public Staticstring Getnettype (Context mcontext) {String NetType= ""; Connectivitymanager ConnectionManager=(Connectivitymanager) mcontext. Getsystemservice (Context.connectivity_service); Networkinfo Info=Connectionmanager.getactivenetworkinfo (); if(NULL! = Info &&info.isavailable ()) {NetType=Info.gettypename (); } returnNetType; } /*** Determine if the network connection is available * *@paramMcontext *@return */ Public Static BooleanGetnetisvali (Context mcontext) {if(Mcontext! =NULL) {Connectivitymanager Mconnectivitymanager=(Connectivitymanager) mcontext. Getsystemservice (Context.connectivity_service); Networkinfo Mnetworkinfo=Mconnectivitymanager. Getactivenetworkinfo (); if(Mnetworkinfo! =NULL) { returnmnetworkinfo.isavailable (); } } return false; } /*** Get carrier information * *@paramMcontext *@return */ Public Staticstring Getnetextrainfo (Context mcontext) {String netextrainfo= ""; Telephonymanager mTm=(Telephonymanager) mcontext. Getsystemservice (Context.telephony_service); if(mtm.getsimstate () = =Telephonymanager.sim_state_ready) {Netextrainfo=Mtm.getsimoperator (); if(NULL!=netextrainfo) { if(Netextrainfo.equals ("46000") || Netextrainfo.equals ("46002") || Netextrainfo.equals ("46007")) { //China MobileNetextrainfo = "China Mobile"; } Else if(Netextrainfo.equals ("46001")) { //China UnicomNetextrainfo = "China Unicom"; } Else if(Netextrainfo.equals ("46003")) { //China TelecomNetextrainfo = "China Telecom"; } Else{netextrainfo= "Other"; } } } returnNetextrainfo; }
1. Consider only 1 cards
2. Don't forget to add network permissions
Android determines network connection status, networking type, operator