在android的开发中,尤其是与访问网络有关的开发,都要判断一下手机是否连接上了网络,下面是一个判断是否连接网络的嗲吗片段:

package cn.com.karl.util;

import com.kubu.main.R;

import android.app.Activity;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.provider.Settings;
import android.widget.TextView; public class IsInternet { /**
* 判断网络情况
* @param context 上下文
* @return false 表示没有网络 true 表示有网络
*/
public static boolean isNetworkAvalible(Context context) {
// 获得网络状态管理器
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivityManager == null) {
return false;
} else {
// 建立网络数组
NetworkInfo[] net_info = connectivityManager.getAllNetworkInfo(); if (net_info != null) {
for (int i = 0; i < net_info.length; i++) {
// 判断获得的网络状态是否是处于连接状态
if (net_info[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
}
}
return false;
} // 如果没有网络,则弹出网络设置对话框
public static void checkNetwork(final Activity activity) {
if (!IsInternet.isNetworkAvalible(activity)) {
TextView msg = new TextView(activity);
msg.setText("当前没有可以使用的网络,请设置网络!");
new AlertDialog.Builder(activity)
.setIcon(R.drawable.android)
.setTitle("网络状态提示")
.setView(msg)
.setPositiveButton("确定",
new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog,
int whichButton) {
// 跳转到设置界面
activity.startActivityForResult(new Intent(
Settings.ACTION_WIRELESS_SETTINGS),
0);
}
}).create().show();
}
return;
}
}

这个代码用到的地方很多,直接添加到自己的项目中就可以使用。

最新文章

  1. OS X 下不通过Homebrew安装ASP.NET 5开发环境
  2. 如何完全卸载(Mac&amp;Windows)office 365 ProPlus
  3. TeamViewer11使用教程
  4. QNetworkAccessManager 实现的 ftp 上传
  5. Java之fianl修饰符
  6. tooltip
  7. hdu 2337 Escape from Enemy Territory
  8. ORACLE SQL单行函数(三)【weber出品必属精品】
  9. SBT模版
  10. linux添加、修改环境变量
  11. 怎么解决 ubuntu 装kde桌面遇到的汉化问题
  12. 腾讯云开放云压测“黑科技“,产品上线从此不再“压力山大&quot;
  13. [Swift]LeetCode779. 第K个语法符号 | K-th Symbol in Grammar
  14. Groovy 设计模式 -- 迭代器模式
  15. getservbyname和getservbyport
  16. Mac下IntelliJ的Git、GitHub配置及使用
  17. 从浏览器输入URL到页面渲染的过程
  18. 『TensorFlow』通过代码理解gan网络_中
  19. [转]How to Create an Add-in for Microsoft Outlook
  20. [BUAA_SE_2017]提问回顾

热门文章

  1. Python 一路走来 Django
  2. 1. Server.Transfer跳转页面抛出异常:正在终止线程
  3. [T]各种字符串Hash函数比较
  4. Sogou搜狗搜索引擎登录网站 - Blog透视镜
  5. qt鼠标事件总结(坐标,跟踪,点击判断)
  6. Cmake find_package()相关
  7. js深入研究之牛逼的类封装设计
  8. NOI2011 兔兔与蛋蛋游戏
  9. NOI2011 兔农
  10. MVC 区域模块