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

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

发布时间:2020-12-15 00:16:56 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 /** * a tool used for judge the network's status * @author liyangchao * */ public class NetWorkTools{ public static booleanisWifi(Context pa

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

/** 
 * 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;  
  
    }  
  
}

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

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

    推荐文章
      热点阅读