/**
* 推断移动网络是否开启
*
* @param context
* @return
*/
public static boolean isNetEnabled(Context context) {
TelephonyManager tm = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
if (tm != null) {
if (tm.getNetworkType() != TelephonyManager.NETWORK_TYPE_UNKNOWN) {
Log.i("sjf", "移动网络已经开启");
return true;
}
}
Log.i("sjf", "移动网络还未开启");
return false;
} /**
* 推断WIFI网络是否开启
*
* @param context
* @return
*/
public static boolean isWifiEnabled(Context context) {
WifiManager wm = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
if (wm != null && wm.isWifiEnabled()) {
Log.i("sjf", "Wifi网络已经开启");
return true;
}
Log.i("sjf", "Wifi网络还未开启");
return false;
} /**
* 推断移动网络是否连接成功
*
* @param context
* @return
*/
public static boolean isNetContected(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (cm != null && info != null && info.isConnected()) {
Log.i("sjf", "移动网络连接成功");
return true;
}
Log.i("sjf", "移动网络连接失败");
return false;
} /**
* 推断WIFI是否连接成功
*
* @param context
* @return
*/
public static boolean isWifiContected(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (info != null && info.isConnected()) {
Log.i("sjf", "Wifi网络连接成功");
return true;
}
Log.i("sjf", "Wifi网络连接失败");
return false;
} /**
* 推断移动网络和WIFI是否开启
*
* @param context
* @return
*/
public static boolean isNetWorkEnabled(Context context) {
return (isNetEnabled(context) || isWifiEnabled(context));
} /**
* 推断移动网络和WIFI是否连接成功
* @param context
* @return
*/
public static boolean isNetworkConnected(Context context) {
return (isWifiContected(context) || isNetContected(context));
}

操作Wifi须要AndroidManifest.xml在进行一些配置:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>

WIFI 的主要操作权限有四个: 

 CHANGE_NETWORK_STATE :同意改动网络状态的权限。 

 CHANGE_WIFI_STATE :同意改动 WIFI 状态的权限。 

 ACCESS_NETWORK_STATE :同意訪问网络状态的权限。 

 ACCESS_WIFI_STATE :同意訪问 WIFI 状态的权限。

最新文章

  1. 全球酷站秀:15个顶尖的 CSS3 网站作品
  2. 《Python核心编程》部分错误纠正(勘误表)(持续更新)
  3. jQ选择器学习片段(JavaScript 部分对应)
  4. cocos2d-x之action初试
  5. 【python】继承时注意事项
  6. centos vmware centos6.6 64位 kvm虚拟化安装配置 第四十二节课
  7. paper 21 :Libsvm的安装和使用
  8. SAP HANA 开发者中心(Developer Center)入门指南
  9. Spring第二天
  10. 界面编程与视图(View)组件
  11. 201521123081《java程序设计》 第13周学习总结
  12. &amp;lt;转&amp;gt; Libvirt学习总结
  13. ORM对象关系映射之GreenDAO自定义属性转换器PropertyConverter
  14. AJAX初步学习
  15. 探究 CSS 混合模式\滤镜导致 CSS 3D 失效问题
  16. 向量 dot cross product 点积叉积 几何意义
  17. vue 自学笔记记录
  18. javassist实例
  19. CentOS6.5安装Maven3.2.5
  20. Hibernate利用JDBC批操作

热门文章

  1. python多线程,限制线程数
  2. js基本功能大全
  3. Python 35 线程(1)线程理论、开启线程的两种方式
  4. C# 对象克隆,DataTable转LIST
  5. Maven项目pom.xml配置详解
  6. 如何使用SQL Developer创建数据库连接
  7. SQL Server存储过程作业(二)
  8. AdaBoost--从原理到实现(Code:Python)
  9. 我的web前端自学之路-心得篇:我为什么要学习web前端?
  10. Dijkstra的双栈算术表达式求值算法 C++实现