Android网络连接判断

本文介绍如何在Android客户端编程中判断网络是否连接,并提供网络连接状态的检验方法及Toast提示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网络连接判断

android网络编程时常需要用到连接判断:

/**
  * 判断Android客户端网络是否连接 
  * @param context
  * @return 真假
  */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;   
    }  

判断网络连接

* 检验网络连接 并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;

}

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[i].getState() == NetworkInfo.State.CONNECTED) {   
                        return true;   
                    }   
                }   
            }   
        }   
        return false;   
    } 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值