主要是用来检測是否有网络,假设没有,就去wifi里面去进行设置网络。。。

以下贴一下主要代码:

private void checkNetWorkInfo() {
if (!Tools.isNetworkAvailable(this)) {
new AlertDialog.Builder(this)
.setTitle("提示!")
.setIcon(android.R.drawable.ic_dialog_info)
.setMessage("检測到你还没开启网络,请开启")
.setNegativeButton("取消", null)
.setPositiveButton("开启",
new DialogInterface.OnClickListener() { @Override
public void onClick(DialogInterface dialog,
int which) {
startActivity(new Intent(
Settings.ACTION_WIRELESS_SETTINGS));// 进入无线网络配置界面
startActivity(new Intent(
Settings.ACTION_WIFI_SETTINGS)); // 进入手机中的wifi网络设置界面
}
}).show();
}
}

isNetworkAvailable里面的代码:

/*
* 推断是否有网络
*/
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
if (cm == null) {
return false;
} else {
// 打印全部的网络状态
NetworkInfo[] infos = cm.getAllNetworkInfo();
if (infos != null) {
for (int i = 0; i < infos.length; i++) {
// Log.d(TAG, "isNetworkAvailable - info: " +
// infos[i].toString());
if (infos[i].getState() == NetworkInfo.State.CONNECTED) {
Log.d(TAG, "isNetworkAvailable - I " + i);
}
}
} // 假设不过用来推断网络连接      
// 则能够使用 cm.getActiveNetworkInfo().isAvailable();
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
if (networkInfo != null) {
Log.d(TAG,
"isNetworkAvailable - 是否有网络: "
+ networkInfo.isAvailable());
} else {
Log.d(TAG, "isNetworkAvailable - 完毕没有网络! ");
return false;
} // 1、推断是否有3G网络
if (networkInfo != null
&& networkInfo.getType() == ConnectivityManager.TYPE_MOBILE) {
Log.d(TAG, "isNetworkAvailable - 有3G网络");
return true;
} else {
Log.d(TAG, "isNetworkAvailable - 没有3G网络");
} // 2、推断是否有wifi连接
if (networkInfo != null
&& networkInfo.getType() == ConnectivityManager.TYPE_WIFI) {
Log.d(TAG, "isNetworkAvailable - 有wifi连接");
return true;
} else {
Log.d(TAG, "isNetworkAvailable - 没有wifi连接");
}
}
return false;
}

最新文章

  1. 第0/24周 SQL Server 性能调优培训引言
  2. halcon算子
  3. git初体验(四)git标签
  4. POJ1061 青蛙的约会(线性同余方程)
  5. hdu3060Area2(任意多边形相交面积)
  6. Oracle的参数文件
  7. 自动装配【Spring autowire】
  8. 代码自动生成工具MyGeneration之一(程序员必备工具)
  9. 加密解密知识 php非对称加密
  10. 安装Node.js
  11. coursera上的软件安全课程的课后阅读补充
  12. 使用Repository模式构建数据库访问层
  13. 【渗透课程】第二篇上-http请求协议的简单描述
  14. 【IT小常识】如何将IE手动升级或降级
  15. [转]docker安装elk
  16. WebSphere Application Server V8.5.5.0
  17. 关于innodb mtr模块
  18. Python在Win10系统的安装和使用配置
  19. Ubuntu SVN安装&amp;使用&amp;命令
  20. Java CST格式字符串转换成Date类型的数据

热门文章

  1. 《编译原理》画 DAG 图与求优化后的 4 元式代码- 例题解析
  2. jvm 内存溢出 在myeclipse中加大tomcat的jvm内存 java.lang.OutOfMemoryError: PermGen space
  3. luogu P1008 三连击
  4. NYOJ 1875 畅通工程再续 (无节点间距离求最小生成树)
  5. Root of AVL Tree
  6. [MVC]Ajax辅助方法
  7. 关于shell中常见功能的实现方式总结
  8. 用AOP来让你的JS代码变得更有可维护性吧
  9. loadrunner使用随机值
  10. 使用HttpWebRequest post数据时要注意UrlEncode