Android网络连接判断与相关处理

作者:lijiao 时间:2022-02-23 11:25:33 

本文为大家分享了Android网络连接判断与相关处理,供大家参考,具体内容如下

获取网络信息需要在AndroidManifest.xml文件中加入相应的权限。
 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

1)判断是否有网络连接 


public boolean isNetworkConnected(Context context) {
 if (context != null) {
  ConnectivityManager mConnectivityManager = (ConnectivityManager) context
    .getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
  if (mNetworkInfo != null) {
   return mNetworkInfo.isAvailable();
  }
 }
 return false;
}

2)判断WIFI网络是否可用


public boolean isWifiConnected(Context context) {
 if (context != null) {
  ConnectivityManager mConnectivityManager = (ConnectivityManager) context
    .getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo mWiFiNetworkInfo = mConnectivityManager
    .getNetworkInfo(ConnectivityManager.TYPE_WIFI);
  if (mWiFiNetworkInfo != null) {
   return mWiFiNetworkInfo.isAvailable();
  }
 }
 return false;
}
 

3)判断MOBILE网络是否可用




public boolean isMobileConnected(Context context) {
 if (context != null) {
  ConnectivityManager mConnectivityManager = (ConnectivityManager) context
    .getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo mMobileNetworkInfo = mConnectivityManager
    .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
  if (mMobileNetworkInfo != null) {
   return mMobileNetworkInfo.isAvailable();
  }
 }
 return false;
}

 4)获取当前网络连接的类型信息 


public static int getConnectedType(Context context) {
 if (context != null) {
  ConnectivityManager mConnectivityManager = (ConnectivityManager) context
    .getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
  if (mNetworkInfo != null && mNetworkInfo.isAvailable()) {
   return mNetworkInfo.getType();
  }
 }
 return -1;
}
标签:Android,网络连接
0
投稿

猜你喜欢

  • Java数组队列概念与用法实例分析

    2023-11-18 04:18:31
  • Android编程实现Toast只显示最后一条的方法

    2023-12-13 11:54:49
  • Java 中HttpURLConnection附件上传的实例详解

    2022-05-26 13:54:39
  • Maven项目修改JDK版本全过程

    2021-07-19 12:13:29
  • MybatisX-Generator自动代码生成插件教程

    2022-01-08 10:50:48
  • Java Swing实现坦克大战游戏

    2021-12-16 21:04:03
  • SpringBoot整合Mybatis简单实现增删改查

    2023-07-05 15:33:44
  • SpringBoot+docker环境变量配置详解

    2022-06-13 07:37:20
  • 详解Java volatile 内存屏障底层原理语义

    2023-05-08 19:25:47
  • 关于Java8 parallelStream并发安全的深入讲解

    2023-11-15 06:37:35
  • Android设置透明状态栏和透明导航栏

    2021-09-22 07:19:41
  • Unity 通过LineRenderer绘制两点之间的直线操作

    2021-08-04 04:15:08
  • 探讨:android项目开发 统筹兼顾 需要考虑的因素

    2023-08-05 11:21:32
  • 解决java.lang.ClassCastException的java类型转换异常的问题

    2023-11-29 04:34:10
  • Spring Security基于JWT实现SSO单点登录详解

    2022-02-28 10:56:55
  • Unity3D基于OnGUI实时显示FPS

    2021-06-25 09:10:52
  • spring 中事务注解@Transactional与trycatch的使用

    2022-08-28 18:26:07
  • c# Struct的一些问题分析

    2023-08-31 08:27:36
  • Java五种方式实现多线程循环打印问题

    2023-03-07 20:34:12
  • java中带参数的try(){}语法含义详解

    2021-10-27 05:20:16
  • asp之家 软件编程 m.aspxhome.com