zoukankan      html  css  js  c++  java
  • 网络连接判断networkutils

    public class NetWorkUtils {
    Context mcontext;
    public NetWorkUtils(Context mcontext){
    this.mcontext = mcontext;
    }

    public int netWorkType(){
    ConnectivityManager mConnectivity = (ConnectivityManager)mcontext.getSystemService(Context.CONNECTIVITY_SERVICE);
    TelephonyManager mTelephony = (TelephonyManager)mcontext.getSystemService(Context.TELEPHONY_SERVICE);
    //检查网络连接
    NetworkInfo info = mConnectivity.getActiveNetworkInfo();

    if (info == null || !mConnectivity.getBackgroundDataSetting()) {
    Log.i("TAG","网络未连接.....");
    return 3;
    }

    int netType = info.getType();
    int netSubtype = info.getSubtype();
    Log.i("TAG",netType+",,"+netSubtype+",,"+mTelephony.isNetworkRoaming());
    if (netType == ConnectivityManager.TYPE_WIFI) { //WIFI
    Log.i("TAG","wifi连接.....");
    return 1;
    } else if (netType == ConnectivityManager.TYPE_MOBILE && netSubtype == TelephonyManager.NETWORK_TYPE_UMTS && !mTelephony.isNetworkRoaming()) { //MOBILE
    Log.i("TAG","移动数据连接.....");
    return 2;
    }
    return 3;
    }
    }

    另一个类需要用到它时,如下写的:

    NetWorkUtils netUtils = new NetWorkUtils(getApplicationContext());
    int i = netUtils.netWorkType();//获得当前网络状态类型
    if(i == 1){
    //请求数据,并保存
    Log.i("TAG", "开始离线下载......");


    }else if(i == 2){
    Log.i("TAG", "提示是移动数据,是否继续下载......");
    }else{
    Log.i("TAG", "没网,不需要下载......");
    }

  • 相关阅读:
    扩展中国剩余定理
    bzoj 3816&&uoj #41. [清华集训2014]矩阵变换
    THUSC2017
    bzoj 4521: [Cqoi2016]手机号码
    bzoj 4871: [Shoi2017]摧毁“树状图”
    bzoj 2300 : [HAOI2011]防线修建
    bzoj 3853 : GCD Array
    HEOI 2017 游记
    bzoj3926: [Zjoi2015]诸神眷顾的幻想乡 广义后缀自动机模板
    bzoj 4310 跳蚤
  • 原文地址:https://www.cnblogs.com/zhengyanyan/p/5338654.html
Copyright © 2011-2022 走看看