加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Android中判断网络状态及其种类

发布时间:2020-05-24 15:40:42 所属栏目:Java 来源:互联网
导读:Android中判断网络状态及其种类

下面是脚本之家 jb51.cc 通过网络收集整理的代码片段。

脚本之家小编现在分享给大家,也给大家做个参考。

/** 
 * a tool used for judge the network's status 
 * @author liyangchao 
 * 
 */  
public class NetWorkTools{  
  
    public static booleanisWifi(Context paramContext) {  
  
        return "2".equals(getNetType(paramContext)[0]);  
  
    }  
  
    public static booleanisMobile(Context paramContext) {  
  
        return "1".equals(getNetType(paramContext)[0]);  
  
    }  
  
    public static booleanisNetAvailable(Context paramContext) {  
  
        if ("1".equals(getNetType(paramContext)[0])  
  
        || "2".equals(getNetType(paramContext)[0])) {  
  
            return true;  
  
        }  
  
        return false;  
  
    }  
  
    // public static booleanisNetworkAvailable(Context context) {  
  
    // ConnectivityManager mgr =  
    // (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);  
  
    // NetworkInfo[] info =mgr.getAllNetworkInfo();  
  
    // if (info != null) {  
  
    // for (int i = 0; i < info.length; i++) {  
  
    // if (info[i].getState() ==NetworkInfo.State.CONNECTED) {  
  
    // return true;  
  
    // }  
  
    // }  
  
    // }  
  
     // return false;  
  
    // }  
  
    public static String[] getNetType(Context paramContext) {  
  
        String[] arrayOfString = { "Unknown","Unknown" };  
  
        PackageManager localPackageManager = paramContext.getPackageManager();  
  
        if (localPackageManager.checkPermission(  
  
        "android.permission.ACCESS_NETWORK_STATE",paramContext.getPackageName()) != 0) {  
  
            arrayOfString[0] = "Unknown";  
  
            return arrayOfString;  
  
        }  
  
        ConnectivityManager localConnectivityManager = (ConnectivityManager) paramContext  
  
        .getSystemService("connectivity");  
  
        if (localConnectivityManager == null) {  
  
            arrayOfString[0] = "Unknown";  
  
            return arrayOfString;  
  
        }  
  
        NetworkInfo localNetworkInfo1 = localConnectivityManager  
  
        .getNetworkInfo(1);  
  
        if (localNetworkInfo1 != null  
  
        && localNetworkInfo1.getState() == NetworkInfo.State.CONNECTED) {  
  
            arrayOfString[0] = "2";  
  
            return arrayOfString;  
  
        }  
  
        NetworkInfo localNetworkInfo2 = localConnectivityManager  
  
        .getNetworkInfo(0);  
  
        if (localNetworkInfo2 != null  
  
        && localNetworkInfo2.getState() == NetworkInfo.State.CONNECTED) {  
  
            arrayOfString[0] = "1";  
  
            arrayOfString[1] = localNetworkInfo2.getSubtypeName();  
  
            return arrayOfString;  
  
        }  
  
        return arrayOfString;  
  
    }  
  
}

以上是脚本之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读