android判断用户网络类型

Nettestactivity代码 复制代码  收藏代码
  1. public class NetTestActivity extends Activity {   
  2.   
  3.     private static final int CMNET = 3;   
  4.     private static final int CMWAP = 2;   
  5.     private static final int WIFI = 1;   
  6.   
  7.     @Override   
  8.     public void onCreate(Bundle savedInstanceState) {   
  9.         super.onCreate(savedInstanceState);   
  10.         setContentView(R.layout.main);   
  11.         getAPNType(this);   
  12.     }   
  13.   
  14.     /**   
  15.      * 获取当前的网络状态 -1:没有网络 1:WIFI网络2:wap网络3:net网络   
  16.      *    
  17.      * @param context   
  18.      * @return   
  19.      */   
  20.     public static int getAPNType(Context context) {   
  21.         int netType = -1;   
  22.         ConnectivityManager connMgr = (ConnectivityManager) context   
  23.                 .getSystemService(Context.CONNECTIVITY_SERVICE);   
  24.         NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();   
  25.   
  26.         if (networkInfo == null) {   
  27.             return netType;   
  28.         }   
  29.         int nType = networkInfo.getType();   
  30.         System.out.println("networkInfo.getExtraInfo() is "  
  31.                 + networkInfo.getExtraInfo());   
  32.         if (nType == ConnectivityManager.TYPE_MOBILE) {   
  33.             if (networkInfo.getExtraInfo().toLowerCase().equals("cmnet")) {   
  34.                 netType = CMNET;   
  35.             } else {   
  36.                 netType = CMWAP;   
  37.             }   
  38.         } else if (nType == ConnectivityManager.TYPE_WIFI) {   
  39.             netType = WIFI;   
  40.         }   
  41.         return netType;   
  42.     }   
  43. }  

你可能感兴趣的:(android)