有的时候我们的应用可能需要判断当前设备是否联网

 private void init() {
/** 获得系统级联网管理员对象 */
ConnectivityManager manager = (ConnectivityManager) this
.getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo info = manager.getActiveNetworkInfo();
if (info == null) { // 无网情况下
// 跳转到网络设置页面
startActivity(new Intent(android.provider.Settings.ACTION_SETTINGS));
} else { // 有网情况下
if (info.isAvailable()) { // 网络可用时
/** 是手机自带的联网方式 */
if (info.getType() == ConnectivityManager.TYPE_MOBILE) {
if (info.getState() == State.CONNECTED) {
Toast.makeText(
MainActivity.this,
"手机网络可用并已连接" + "\n" + "连接网络方式为:\n"
+ info.getType() + ",MOBILE", 1).show();
}
/** WIFI联网方式 */
} else {
Toast.makeText(MainActivity.this,
"连接网络方式为:" + info.getType() + ",WI-FI", 1).show();
startActivity(new Intent(
android.provider.Settings.ACTION_WIFI_SETTINGS));
}
} else {
Toast.makeText(MainActivity.this, "手机网络不可用", 1).show();
}
}
}

不过最后注意增加以下权限,允许程序访问有关GSM网络信息(Allows applications to accessinformation about networks),不然会报错

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

Android判断网络连接状态的更多相关文章

  1. android判断网络连接状态、联网类型、运营商

    /** * 获取上网方式 * * @param mContext * @return */ public static String getNetType(Context mContext) { St ...

  2. Win8 app判断网络连接状态

    Win8 app判断网络连接状态 NetworkInformation.NetworkStatusChanged += NetworkInformation_NetworkStatusChanged; ...

  3. c#判断网络连接状态示例代码

    使用c#判断网络连接状态的代码. 代码: public partial class Form1 : Form { [DllImport() == true) { label1.Text = " ...

  4. 【Android进阶】判断网络连接状态并自动界面跳转

    用于判断软件打开时的网络连接状态,若无网络连接,提醒用户跳转到设置界面 /** * 设置在onStart()方法里面,可以在界面每次获得焦点的时候都进行检测 */ @Override protecte ...

  5. android 检查网络连接状态实现步骤

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

  6. Android 检测网络连接状态

    Android连接网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置. 首先,要判断网络状态,需要有相应的权限,下面为权限代码(Androi ...

  7. android检测网络连接状态示例讲解

    网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置   Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(Andro ...

  8. iOS 判断网络连接状态的几种方法

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px "PingFang SC"; color: #801b80 } p.p2 ...

  9. android检查网络连接状态的变化,无网络时跳转到设置界面

    在AndroidManifest.xml中加一个声明<receiver android:name="NetCheckReceiver"> <intent-filt ...

随机推荐

  1. iOS断言

    来自:http://my.oschina.net/panyong/blog/205573 在看到xmpp项目中的一些代码时,看到如下,不懂该代码是啥意思, 如下: NSAssert(_xmppStre ...

  2. OC基础9:预处理程序

    "OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.  关于#define语句: (1). ...

  3. Java虚拟机类载入顺序

    Java虚拟机在载入类的时候.先初始化父类静态变量.再初始化子类静态变量.然后载入父类,最后载入子类 public class Parent { static{ System.out.println( ...

  4. java分页数据导出excel

    /** * 订单导出(用于统计利润) * @return */ public String orderExport() throws IOException{ if (queryOrderList_c ...

  5. iOS 自我检測

    1.id 和 NSObject的差别? 2.UITableViewCell的复用原理? 3.UIView生命周期和UILayer的差别? 4.多线程NSOperation和Queue.GDC.Thre ...

  6. 初学DIV+CSS要记住的

    初学DIV+CSS?有六个问题需要您关注一下!作为DIV+CSS初学者,如果在动手写代码之前对网页整体结构由一个清晰认识的话,写起来会事半功倍!但是,写的过程中总是有这样那样的问题,使得我们不得不停下 ...

  7. Vijos 1120 花生采摘

    和“过河”一样,在很久以前我也曾经尝试过做这道题,可无奈当时没有看清题目.题目上说要先找最大的,然后次之.当时纠结了好久,可惜没做出来.但是现在就很好做了,只需要用结构体把每一个花生植株记录下来,so ...

  8. Metafunction

    Metafunction is a more general idiom than type generator. Metafunctions that produce type(s) as a re ...

  9. Server2008系统 FTP下载“当前的安全设置不允许”的解决方法

    IE -> Internet选项 -> 安全 -> Internte -> 自定义级别 设置 -> 下载 -> 文件下载 -> 启动

  10. 解析处理常用json数据总结

    工作中用ajax接收到接口返回的数据需要进行解析后操作,这里总结一下平时的方法,用的jquery,复制下来的页面把引入的路径改一下即可. <!DOCTYPE html> <html ...