关闭

判断手机连接方式(3G or wifi)

275人阅读 评论(0) 收藏 举报
分类:

private boolean networkState() {
  ConnectivityManager mConnectivity = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
  TelephonyManager mTelephony = (TelephonyManager) this
    .getSystemService(TELEPHONY_SERVICE);
  // 检查网络连接,如果无网络可用,就不需要进行连网操作等
  NetworkInfo info = mConnectivity.getActiveNetworkInfo();

  if (info == null || !mConnectivity.getBackgroundDataSetting()) {
   return false;
  }

  // 判断网络连接类型,只有在3G或wifi里进行一些数据更新。
  int netType = info.getType();
  int netSubtype = info.getSubtype();

  if (netType == ConnectivityManager.TYPE_WIFI) {
   return info.isConnected();
  } else if (netType == ConnectivityManager.TYPE_MOBILE
    && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS
    && !mTelephony.isNetworkRoaming()) {
   return info.isConnected();
  } else {
   return false;
  }
 }

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:22851次
    • 积分:189
    • 等级:
    • 排名:千里之外
    • 原创:95篇
    • 转载:1篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档