android检测网络连接是否存在(一)

简介: android检测网络连接是否存在(一)

在开发过程中,尤其是在开发网络应用的时候,时常要判断手机的联网状态,及时的给用户友善的提示。我们登录market,在网络断开的时候会及时的弹出警告窗口,避免用户盲目的等待。

这样的判断要贯穿在整个应用当中,在用户切换Activity,或者是后台service运行的时候都可能要用到。所以我们可以将判断的逻辑封装成一个方法,让其他Activity/service公用。

public static boolean isNetworkAvailable( Activity mActivity ) { 
    Context context = mActivity.getApplicationContext();
    ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    if (connectivity == null) {    
      return false;
    } else {  
        NetworkInfo[] info = connectivity.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 void HttpTest(final Activity mActivity)
  {
    if( !isNetworkAvailable( mActivity) ){
      AlertDialog.Builder builders = new AlertDialog.Builder(mActivity);
      builders.setTitle("抱歉,暂时无法处理您的请求");
      LayoutInflater _inflater = LayoutInflater.from(mActivity);
      View convertView = _inflater.inflate(R.layout.error,null);
      builders.setView(convertView);
      builders.setPositiveButton("确定",  new DialogInterface.OnClickListener(){
        public void onClick(DialogInterface dialog, int which)
        {
          mActivity.finish();
        }       
      });
      builders.show();
    }
  }

这样我们在Activity的onCreate的时候或者onResume 的时候就只需要 调用这个方法。将当前的Activity.this当做参数传进去即可。

相关文章
|
5天前
|
数据可视化 数据挖掘
【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享
【视频】复杂网络分析CNA简介与R语言对婚礼数据聚类社区检测和可视化|数据分享
|
5天前
|
Android开发
Android网络访问超时
Android网络访问超时
13 2
|
5天前
|
Android开发
如何在Android真机上检测是否有Google Map add-on
如何在Android真机上检测是否有Google Map add-on
14 3
|
5天前
|
Java Linux API
统计android设备的网络数据使用量
统计android设备的网络数据使用量
16 0
|
3天前
|
设计模式 算法 Android开发
2024年Android网络编程总结篇,androidview绘制流程面试
2024年Android网络编程总结篇,androidview绘制流程面试
2024年Android网络编程总结篇,androidview绘制流程面试
|
5天前
|
算法
计算机网络:封装成帧 & 透明传输 & 差错检测
计算机网络:封装成帧 & 透明传输 & 差错检测
9 0
|
5天前
|
机器学习/深度学习 存储 算法
m基于Yolov2深度学习网络的螺丝检测系统matlab仿真,带GUI界面
MATLAB 2022a中展示了YOLOv2算法的螺丝检测仿真结果,该系统基于深度学习的YOLOv2网络,有效检测和定位图像中的螺丝。YOLOv2通过批标准化、高分辨率分类器等优化实现速度和精度提升。核心代码部分涉及设置训练和测试数据,调整图像大小,加载预训练模型,构建YOLOv2网络并进行训练,最终保存检测器模型。
25 3
|
5天前
|
机器学习/深度学习 人工智能 安全
【AI 初识】人工智能如何用于欺诈检测和网络安全?
【5月更文挑战第3天】【AI 初识】人工智能如何用于欺诈检测和网络安全?
|
5天前
|
安全 网络安全 Android开发
云端防御策略:融合云服务与网络安全的未来构建高效的Android应用:从内存优化到电池寿命
【4月更文挑战第30天】 随着企业加速向云计算环境转移,数据和服务的云端托管成为常态。本文探讨了在动态且复杂的云服务场景下,如何构建和实施有效的网络安全措施来保障信息资产的安全。我们将分析云计算中存在的安全挑战,并展示通过多层次、多维度的安全框架来提升整体防护能力的方法。重点关注包括数据加密、身份认证、访问控制以及威胁检测与响应等关键技术的实践应用,旨在为读者提供一种结合最新技术进展的网络安全策略视角。 【4月更文挑战第30天】 在竞争激烈的移动市场中,Android应用的性能和资源管理已成为区分优秀与平庸的关键因素。本文深入探讨了提升Android应用效率的多个方面,包括内存优化策略、电池
|
5天前
|
机器学习/深度学习 算法 计算机视觉
m基于Yolov2深度学习网络的人体喝水行为视频检测系统matlab仿真,带GUI界面
MATLAB 2022a中使用YOLOv2算法对avi视频进行人体喝水行为检测,结果显示成功检测到目标。该算法基于全卷积网络,通过特征提取、锚框和损失函数优化实现。程序首先打乱并分割数据集,利用预训练的ResNet-50和YOLOv2网络结构进行训练,最后保存模型。
31 5