Android设备是否连接网络

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
public static boolean checkNet(Context context) {     

        try {     
            ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);     
            if (connectivity != null) {     

                NetworkInfo info = connectivity.getActiveNetworkInfo();     
                if (info != null && info.isConnected()) {     

                    if (info.getState() == NetworkInfo.State.CONNECTED) {     
                        return true;     
                    }     
                }     
            }     
        } catch (Exception e) {     
        return false;     
}     
        return false;     
    }    

以上代码只能判断是否有可用的连接,而不能判断是否能连网

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
* 检验网络连接 toast提示  
*   
* @return  
*/  
public boolean note_Intent(Context context) {  
    ConnectivityManager con = (ConnectivityManager) context  
        .getSystemService(Context.CONNECTIVITY_SERVICE);  
    NetworkInfo networkinfo = con.getActiveNetworkInfo();  
    if (networkinfo == null || !networkinfo.isAvailable()) {  
    // 当前网络不可用   
        Toast.makeText(context.getApplicationContext(), "请先连接Internet!",  
        Toast.LENGTH_SHORT).show();  
        return false;  
    }  
    boolean wifi = con.getNetworkInfo(ConnectivityManager.TYPE_WIFI)  
        .isConnectedOrConnecting();  
    if (!wifi) { // 提示使用wifi   
        Toast.makeText(context.getApplicationContext(), "建议您使用WIFI以减少流量!",  
        Toast.LENGTH_SHORT).show();  
    }  
    return true;  

}  
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
android中判断网络连接是否可用

http://www.cnblogs.com/codeworker/archive/2012/04/23/2467180.html
一、判断网络连接是否可用

[java] view plaincopyprint?
public static boolean isNetworkAvailable(Context context) {     
        ConnectivityManager cm = (ConnectivityManager) context     
                .getSystemService(Context.CONNECTIVITY_SERVICE);     
        if (cm == null) {     
        } else {  
       //如果仅仅是用来判断网络连接   
        //则可以使用 cm.getActiveNetworkInfo().isAvailable();     
            NetworkInfo[] info = cm.getAllNetworkInfo();     
            if (info != null) {     
                for (int i = 0; i < info.length; i++) {     
                    if (info.getState() == NetworkInfo.State.CONNECTED) {     
                        return true;     
                    }     
                }     
            }     
        }     
        return false;     
    }   
二、判断GPS是否打开

[java] view plaincopyprint?
public static boolean isGpsEnabled(Context context) {     
        LocationManager lm = ((LocationManager) context     
                .getSystemService(Context.LOCATION_SERVICE));     
        List accessibleProviders = lm.getProviders(true);     
        return accessibleProviders != null && accessibleProviders.size() > 0;     
    }   
三、判断WIFI是否打开

[java] view plaincopyprint?
public static boolean isWifiEnabled(Context context) {     
        ConnectivityManager mgrConn = (ConnectivityManager) context     
                .getSystemService(Context.CONNECTIVITY_SERVICE);     
        TelephonyManager mgrTel = (TelephonyManager) context     
                .getSystemService(Context.TELEPHONY_SERVICE);     
        return ((mgrConn.getActiveNetworkInfo() != null && mgrConn     
                .getActiveNetworkInfo().getState() == NetworkInfo.State.CONNECTED) || mgrTel     
                .getNetworkType() == TelephonyManager.NETWORK_TYPE_UMTS);     
    }  
四、判断是否是3G网络

[java] view plaincopyprint?
public static boolean is3rd(Context context) {     
        ConnectivityManager cm = (ConnectivityManager) context     
                .getSystemService(Context.CONNECTIVITY_SERVICE);     
        NetworkInfo networkINfo = cm.getActiveNetworkInfo();     
        if (networkINfo != null     
                && networkINfo.getType() == ConnectivityManager.TYPE_MOBILE) {     
            return true;     
        }     
        return false;     
    }    

五、判断是wifi还是3g网络,用户的体现性在这里了,wifi就可以建议下载或者在线播放。

[java] view plaincopyprint?
public static boolean isWifi(Context context) {     
            ConnectivityManager cm = (ConnectivityManager) context     
                    .getSystemService(Context.CONNECTIVITY_SERVICE);     
            NetworkInfo networkINfo = cm.getActiveNetworkInfo();     
            if (networkINfo != null     
                    && networkINfo.getType() == ConnectivityManager.TYPE_WIFI) {     
                return true;     
            }     
            return false;     
        }  ```

声明:eoe文章著作权属于作者,受法律保护,转载时请务必以超链接形式附带如下信息

原文作者: Tracy_yyl

原文地址: http://my.eoe.cn/824014/archive/15654.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值