说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Android编程获取网络连接状态(3G/Wifi)及调用网络配置界面

HTML文档下载 WORD文档下载 PDF文档下载
检测网络连接状态也就成为Android网络应用程序所必备的功能,本文介绍如何检测网络连接状态并调用网络配置界面。

 

获取网络连接状态
随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能。
Android平台提供了ConnectivityManager  类,用于网络连接状态的检测。
Android开发文档这样描述ConnectivityManager 的作用:
 
Class that answers queries about the state of network connectivity. It also notifies applications when network connectivity changes. Get an instance of this class by callingContext.getSystemService(Context.CONNECTIVITY_SERVICE).
The primary responsibilities of this class are to:
Monitor network connections (Wi-Fi, GPRS, UMTS, etc.)
Send broadcast intents when network connectivity changes
Attempt to "fail over" to another network when connectivity to a network is lost
Provide an API that allows applications to query the coarse-grained or fine-grained state of the available networks
下面这个简单的例子 checkNetworkInfo() 说明了如何编程获取Android手机的当前网络状态

作者:mainroadlee

获取网络连接状态

随着3G和Wifi的推广,越来越多的Android应用程序需要调用网络资源,检测网络连接状态也就成为网络应用程序所必备的功能。

Android平台提供了ConnectivityManager  类,用于网络连接状态的检测。

Android开发文档这样描述ConnectivityManager 的作用:

 

Class that answers queries about the state of network connectivity. It also notifies applications when network connectivity changes. Get an instance of this class by callingContext.getSystemService(Context.CONNECTIVITY_SERVICE).

 

The primary responsibilities of this class are to:

 

Monitor network connections (Wi-Fi, GPRS, UMTS, etc.)

Send broadcast intents when network connectivity changes

Attempt to "fail over" to another network when connectivity to a network is lost

Provide an API that allows applications to query the coarse-grained or fine-grained state of the available networks

下面这个简单的例子 checkNetworkInfo() 说明了如何编程获取Android手机的当前网络状态

private void checkNetworkInfo(){        ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);        //mobile 3G Data Network        State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();        txt3G.setText(mobile.toString()); //显示3G网络连接状态        //wifi        State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();        txtWifi.setText(wifi.toString()); //显示wifi连接状态}
注:
根据Android的安全机制,在使用ConnectivityManager时,必须在AndroidManifest.xml中添加<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 否则无法获得系统的许可。
运行结果(关闭3G及wifi网络连接的状态下)
调用Android手机的网络配置界面
使用过Android手机上的手机QQ的朋友,应该知道,当QQ启动时,如果没有有效的网络连接,QQ会提示转入手机的网络配置界面。这是如何实现的呢。其实很简单啦
private void checkNetworkInfo(){        ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);        //mobile 3G Data Network        State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();        txt3G.setText(mobile.toString());        //wifi        State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();        txtWifi.setText(wifi.toString());                //如果3G网络和wifi网络都未连接,且不是处于正在连接状态 则进入Network Setting界面 由用户配置网络连接        if(mobile==State.CONNECTED||mobile==State.CONNECTING)            return;        if(wifi==State.CONNECTED||wifi==State.CONNECTING)            return;                        startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));//进入无线网络配置界面        //startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS)); //进入手机中的wifi网络设置界面        }
运行结果(关闭3G及wifi网络连接的状态下),程序转入无线网络配置界面
startActivity(new Intent(Settings.ACTION_WIRELESS_SETTINGS));//进入无线网络配置界面
如果调用
startActivity(new Intent(Settings.ACTION_WIFI_SETTINGS)); //直接进入手机中的wifi网络设置界面
则直接进入手机中的wifi网络设置界面
在wifi网络连接后 运行该程序
我们可以看到 wi-fi 状态为已连接(CONNECTED).
本文来源:http://www.cnblogs.com/mainroadlee/archive/2011/01/11/Android_Network_State_Checking_And_Setting.html

 

 

把服务器搬进来:Splashtop在中国搭建Bridging Cloud Web框架全对比第五期 新增Windows环境 前Tumblr首席开发者回忆录:一个人也能开发出好产品 测试者和开发者,为何我们不能友好地相处? 讲师秀之11:何刚谈京东的云机遇 讲师秀之10:武汉大学张焕国教授,可信计算是云计算之成败关键 【上海直播】Windows Azure+世纪互联:中国云计算“烈火烹油” 最新版Chrome浏览器推出全新语音搜索功能 惠普第二财季净利润同比下滑32% PC和服务器销售不佳 讲师秀之11:网易汪源的成长故事 PPT集萃(三):六位国内技术大牛分享巨型平台的打造与应用 聚焦全球移动市场:创新以色列 科技巨头的倾慕之地 Android版Chrome 27浏览器正式上架 机器人——数据中心的新“网管” George Chu:在雅虎打造真正的工程师文化 2013,303+家中国云计算企业的“生态系统”之梦! 高访问量Web应用跨云端迁移的原因:权限和易用性 Web应用开发者福音 Chrome 28新增丰富通知中心功能 帷千兰旭:推广渠道鱼龙混杂,开发者请小心 关于IE 10 你应该知道的6件事 Spring Framework 4.0M1发布,支持JDK 8、Java EE 7 “渣打科营编程马拉松赛”正式启动 官网同时上线 Android应该支持OpenCL的十大理由 传谷歌考虑和Facebook竞购众包地图Waze 谷歌工程师再次公布Windows漏洞 并称微软很难合作 Glassdoor评前景最令员工乐观的十大科技公司 华为上榜 下一代Android深度前瞻 第18级API功能揭秘 Web开发者不容错过的20段CSS代码 8大核心要点:我们能用HTML5 Canvas做什么? 移动周报:直接拿来用!最火的Android开源项目 前MySQL CEO:云将重新定义开发者的每一件事 大侠们,在线求word200文件密码破解,急!!!!!!!!!!! ccnet(苦海放歌) tdl982324(石井坚) ( ) wanghr100(灰豆宝宝.net) possible_Y(◎)(◎)←(这是眼镜,不要想歪了)请接分 ccnet(苦海放歌)yaoxuefeng(锋雨者)brainf(后街)请接分 配置节的type的第二个参数的含义 报表问题。 最近在找个网站管理系统,各位能否给个建议 windows2000的奇怪问题 关于如何自定义组件问题 有关windows 98自动重起问题。 ListBox问题 VFP8.0中的数组问题,高手和用过的人来看看! 数据库的移植问题? 重新开机时常常变成"大图标",怎样设置使WIN2K所有磁盘(c,d,e盘)上的所有文件夹和文件以"列表"显示,就是让"查看"->"列表"固定? oracle9i的安装文件都有什么?望高之!急! 哪位有没有SCJP培训的录音或其他教学的好东西阿 MSComm控件在设计时运行没问题,但打包后装到别的机子老是出现“没有注册类”,求救? delphi 做的数据库应用程序如何移植?? copysign怎么用啊? 如何将一个网页的所有链接均自动加为绝对链接? 技术与数学的问题 本人写了一个设置纸张方向和大小的函数,其中MyDevMode.dmPaperSize = psize '若vbPRPSA3 设置纸大小为A3,但在VB对象库中找不A2张对应值 tomcat4.1.24中的sevlet问题 我下载了linux的iso文件,可怎么安装啊!! 我想问一下,有关于计数器的相关的信息? 救急:是否可以在两个页面(两个单独打开得ie浏览器页面)传递参数,如何实现啊? JDBC相关的两个问题 Oracle8.1.6怎样连接SQL SERVER2000 ?(在线等待) inserted表问题 急!!!关于FileSystemObject问题,在线等 dll 编译问题 请教 请教关于iterator与container? 谁有mixerAPI的中文资料,如(mixerGetLineInfo)我需要弄懂原理(不需要MSDN) 请问“怎么样才能修改以有的flash文件”,拜托,在线等待 如何使相同的子窗口显示一个? ?请教高手有关Align的问题。 高手帮我谢谢注释~~高分相赠~~~~谢谢高手~~~~ 各位大牛们,小弟想请教大家对FlowMIS这个平台有多少了解,用此平台进行二次开发(企业信息系统)好不好。 SQL SERVER2000 怎样连接Oracle8.1.6(在线等待) C语言程序设计 如何在英文字符集的客户端访问服务器为中文的数据库? 那4M是不是让诺基亚给偷了?! 如何调用ResetPrinter函数设置默认打印机 listview使用的问题 delphi的打包问题 请大家推荐一个短信网关 调查:当你身边响起神圣的国歌时,你会不会不由自主站起来,手放到胸前,跟着节奏一起唱起来?(有感而发) 请问如何调用.chm的帮助文件? 如何调用系统默认打印机的属性! 请教新手问题~~~麻烦哪为大侠给解释解释~谢~ 如何用struts实现阴阳色列表? 怎么用vb建立一个数据库呀?注意,不是一个表,是一个数据库! 望梅止渴主要内容 新文化运动前期的根本目的是( )新文化运动前期的根本目的是( )A、改造传统的儒家思想 B、倡导西方文化,促进社会进步C、倡导新文学和白话文 D、反对思想领域的尊孔复古我知道是B, 人们走进放菜的地窖时,有时会发生晕倒现象,这是因为地窖里的大白菜,番薯等也再呼吸,它们跟人一样,也是呼进二氧化碳.日长月久,它们呼出的二氧化碳就像滚雪球一样越积越多.问(1)你能 表示“扔”的词语?暗暗暗暗暗暗暗暗 新文化运动的目标是什么?要考中国中国近现代史纲要了,有一个这个题,书上没翻到,囧. 地窖内存放的红薯为什么长白毛?还有点发软的现象.这是什么原因,温度从没超过15度. 抛的词语是什么 新文化运动的目的 红薯地窖中硫化氢气体怎么分解 核糖体大小亚基为什么要分离 新文化运动的目的是什么 有谁知道这是什么虫子. 原核细胞的核糖体两个亚基分别是多大? 怎么写课题 这种昆虫是什么?有谁知道? 与初中有关的所有物理公式(越详细越好) 高一物理第七题.谢谢.求解! 有谁知道这是什么昆虫?经常看见如图的虫子, 单细胞生物有没有线粒体? 课题怎么写啊? cad,样条曲线是什么,拟合是什么,他们之间有什么区别,对多段线进行拟合则新的线要通过原来多段线上的点,而做成样条曲线,则不通过那些多段线上的点,为什么? 好的,但是我想先看一下电视节目.的英语怎么说求大神 桃树接桃子是什么生殖方式 He doesn´t have his schoolbag.求翻译 早期城市的基本特征有..六个 什么是相对误差?测定一块氯化钠中含有的碳酸氢钠杂质的含量,用氢氧化钙来算生成的碳酸钙的质量为什么说将氢氧化钠换成氢氧化钡会更好 我打错了,是氢氧化钙换成氢氧化钡 求和鲁迅先生有关的文章! 求问城市与广大农村相比,具有哪些基本特征? 生物里的NADP是什么意思? 物质世界的奥秘虽很多,但人们总有一天会穷尽它;人类总有一天会穷尽对一切事物的认识,为什么是错的? 为什么说密集性是城市基本特征之一 一架飞机以加速度a从地面由静止开始竖直向上起飞,每秒耗油量V=pa+q(p,q为常数).若飞机飞到某一高度,耗油量最小,则其加速度大小为多少. 前者穷尽精力去探索存在的意义,后者迅速适应这个世界.你是?前者就象地球上苦苦追寻宇宙奥秘的科学家,他或许聪明绝顶,或许知识渊博,却永远不可能找出所有未知的答案.而后者则象是人类 ONE SHOT什么意思 Helicopters have only been worked on by man since 1940.怎么翻译这句话,主要是only 我不解 一个多边形的内角和等于外角和的n倍,则这个多边形的边数是 对丁克家族的看法?我是80年后的一代,父母辈的人的观念是:结婚就应该生孩子,这是种幸福.可是我不认为是这样.也许是价值观不同吧.我认为生孩子是项弊大于利的投资.想到生孩子,我就联想 A man has been arrested____the murder of the teenager.A in connection withB to connect 已知X为第二象限角,问X/2为第几象限角?我想问的是 用直角坐标系 解题的那个简便做法,我就记得 是X为第二象限,就把什么分为两部分 这两个小孩哪个说的有道理?意思是什么!简介一点!好的话+100分!别长篇大论! Hardware changes might not have been detected 市场调研方案怎么写? 对丁克家族应持有什么态度 英语原型填空 send 还是 sendsPeople in western countries ____ e-cards to each other at Christmas.这里改用 send 还是第三人称 sends.这里的people 貌似是作单数的吧,今天老师说的时候我没听清楚. 调研方案怎么写?就是调查一个市场的具体的文书.有什么格式呢?最好能给份例子啊! 核糖体大小亚基在合成蛋白质前是分开的还是在一起的 NADP+怎么念 怎么写 交通调查方案? spare part怎么读 Do you expect _to be any possibility that he will be elected chairman?A .it B.there 2.The information on the Internet gets around much more rapidly than _in the newspaper.A.it B.that3.I intended to compare notes with a friend,but unfortunately _cound 英语翻译 android 手机spare part 里面有挂载/系统有只读和读写到底有什么用—什么区别—选择的话选择哪个呢? 请问 you expect to have that person to yourself 发光的不一定是金子.这句话怎么理解最好举例 12month and 1% spare 这实在出口产品保修期的一种说法,我只是不明白的1%spare 一生物题,答案为B 请写出解释一道生物题;对某植物进行以下处理:(甲)持续光照10分钟;(乙)光照5秒钟后再黑暗5秒钟,连续交替进行20分钟.如其他条件不变,则在甲、乙两种情况下植物 计划进度与实际进度匀速进行是什么意思 Spare part of flue gas 吉普顿服装怎么样 法布尔是怎样看待昆虫世界的 19岁坚强女孩爬行上大学:选择学医将女学生被抱养18年无户口 相关部门称瞭望:以宏大的高素质人才队伍托起中国香港不满马尼拉向华人筹募赔款 港媒骂浙江国企力邀民企加盟 推3244亿元宁波大学举办“国际文化日”国务院部署推进公司注册资本登记制度改《我是特种兵之火凤凰》演员拍摄搞笑花不留遗憾,5对老夫妻补拍婚纱照美对华钢铁产品发起贸易救济调查宁波市环境空气质量优良率在浙江省排名发改委官员:我国城市群交通存在三大问工业利润增势保持稳定但增长基础仍然脆廊坊数百学生不满校园管理聚集抗议 官俄媒:俄中简化边界海关检查体现两国高医改网站技术问题百出 奥巴马上教堂也上海自贸区基本运行制度创新框架已建立收入分配改革有望三中全会后推进 提低林毅夫:中国经济仍有20年年增长8%女大学生为照顾瘫痪母亲休学 喂饭端尿袁隆平赴武大演讲 因场地问题仅持喇叭走在岁月的道路上记得欣赏沿途的风景电商也“沦陷” 互联网金融影响力分析四个直击灵魂的故事,值得深思!马云在台大演讲(全文):创业者一定要敢于迷路才能找到出路热贷网涉嫌非法集资 已被正式立案一生一知音,莫负一个有缘人日报:多家地产私募被查 部分试图通过彪悍的人生不需要解释金地集团否认涉P2P最大兑付,遭投资评论:也许正是有了释永信,我们才信了上市系平台重组盛融在线 股东面临退“野蛮人”敲门谜底:股灾之后,20余大题材呼之欲出:中国版工业4.0概念一个人过, 只要心态好, 那就是一种超赞!Apple Watch官方介绍本周市场大起大落,投资者应该如何进行军工一哥爆料:2015年军费支出详细央行勒紧第三方支付通道,互联网金融何2015医药界两会代表座谈会实录格罗斯:低利率是问题之源,而非解决方
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘