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

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

 

 

苹果iPhone6获工信部许可 本月17日在内地发售 使用Redis之前5个必须了解的事情 妆媒体微信公众号背后的酸甜苦辣 TIOBE 2014年10月编程语言排行榜:Dart首次进入前20 Instagram工程师教你如何改善App的性能 利用Neo4j对电影评论进行深度学习情感分析 【简讯】SQLite 3.8.7来了 性能提升超50% 浏览器重定向性能分析经验谈 豆瓣工程副总裁段念:看板方法核心瞄准流程中的“流动性” 【图文实录】CTO俱乐部公开课:探讨如何成为技术团队管理者 资深产品交付咨询顾问何勉谈看板:“以价值拉动”解决敏捷困扰 开源HTML5游戏引擎Frozen背后的技术 MDCC 2014精彩日程、演讲嘉宾、参展开发团队全揭秘(图) Hi,约吗?2014华为开发者联盟沙龙(上海站)火热报名中! 找虐新方向!TinyScreen显示屏打造最小游戏机 精彩继续 MDCC2014首次推出技术训练营 复制器官哪家强?3D生物打印找PrintAlive 电信开放平台应用内计费SDK 助力App小额快捷支付 专心做设计!开源跨平台应用开发框架Appverse Mobile 无线盛宴尽在阿里百川开放大会 医学界的Instagram:加拿大重症监护医生开发照片分享应用 2014中国移动开发者大调查第二批获奖名单揭晓 基于OpenStack的私有云开发部署实践 亚马逊云平台的迁移过程 【干货】微信企业号开发资源集锦 CSS生日快乐:CSS之父H&#229;kon Wium Lie访谈录 好友近2000万,绑定银行卡过千万,日会话近百万,招商服务号成功之道 一名程序员十年技术之路的思考与感悟 聚焦企业号、服务号典型案例 微信开发者大会深圳站正式开启 Objective-C之父Brad Cox访谈:我的编程之路 【先锋】完成B轮融资的TalkingData新商业模式:平台理念+跨界分析+技术开源 关于LPCWSTR的问题? TChart的Canvas写上字后,最小化再最大化后字就没了, [2]请大家无论如何都要帮个忙,oralce存储过程性能问题,高手请进!!! 请问如何直接取得其它计算机的系统时间 如何使的 Form2 在 Form1 的 Top ? 怎样在pagecontrol的一个tabsheet中的页面加一个上下的滚动条 急!将textbox控件放入table中后无法通过controls获得textbox的id? 大家说说看!! 初来乍到,向各位学习,请大家指点一下,介绍些好的C#的WEB源码示例。 请大家帮我看看! weblogic发布servlet的问题 Fatal Error 的问题 哪里有和手机一样的笔划输入法下载. 哥哥们,问题还没有搞定,帮帮忙吧,很急呀,分不够可以加分 XDevClub.Com[X时代开发俱乐部]欢迎大家一起来讨论,来者有分 求救!!我的vc缺少一个 psapi.h 头文件!!!急用,帮忙粘贴一下,当场给分!!! 怎样更改CListCtrl中内嵌的CHeadCtrl控件的风格? 有关TChart的问题? 我怎样才能获得插入语句的ID值? 求帮助数组的问题 给分100 紧急求救 在DELPHI里执行ORACLE存储过程出错??? 当按照书名查询时,系统提示没有该索引:no index with 'bookname' field.何故 CorelDram教程碟不能播放怪的问题!! 如何在vb調用SQL存儲過程,并能得到返回的參數值. 哪位大侠帮帮忙呀!! 用CString的Find(LPCTSTR pstr,int nStart),pstr有没有通配符,急!!!!! 一个XP与2000的共享问题 打印问题,请各位提点建议。 DBA的缺省密码---【在线等】 错误:"参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。" 产生原因 免费100m asp 空间 求救,如何打开一个USB设备,CreateFile吗?请具体些 在线求救 谁是最可恨的人? 如何将本页设为只能是 target="_top" 谁有格斗游戏的源码,设计资料! 三人合作共同开发一网站,现需页面设计,有意者留下EMAIL 怎样用C#把窗口菜单和按钮做成象VS.NET中的平面菜单和工具栏上的平面按钮? 为什么在MMC中新建SQLSERVER注册总是出现超时已过期的错误? 這樣定義宏是什么意思:#define LIBCMD(givenfunction) \? ===这样的SQL在ORACLE 怎么执行不了 一个WIN2000与WINXP的共享问题 如何将一个CBitmap存为BMP文件? 在directshow中,如何实现像大部分播放器那样的“快进”功能? 较难问题--IE6不能启用cookie? 如何修改group里的数据排序方式? 如何写动态SQL语句??? 怎样让select元素不能修改? 谁用过微软的tts??? 郁闷......呀,偶MM说接吻觉得恶心!!!! 原子吸收光谱法中常用原子化器有哪些? 关于过柱子梯度洗脱的问题跑板确定的洗脱剂是乙酸乙酯:石油醚=2:1,请问一下应设多少个梯度,中间梯度是多少,起始梯度是多少,还有每个梯度用多少洗脱剂?TLC上共有三个点,所要物质是 若制取氯化钾的反应进行得不充分,制取的氯化氢气体会是什么颜色?产生的化学方程式 中子在原子中的作用?对原子自身的作用~~ 液相色谱梯度洗脱中途可以停止吗.急 1111111 我们知道空气中含有N2、O2、CO2、H2S等气体.分析下列现象的原因.并写出离子方程式.1、酚酞为指示剂,用碱液滴定酸液到显现浅红色在半分钟内不褪色为终点.约半分钟后导致退色的原因?2、以 原子吸光光谱法中使用氩气的作用是什么 液相色谱分析中梯度洗脱可以分离的物质,不用梯度洗脱有可能实现分离吗? 用矢量为43的烷基取代甲苯苯环上的一个氢原子,所得芳香烃产物的数目为 骗人的把戏是什么意思 将2.34gNaCl固体溶于103.4g水中得到不饱和溶液,再向所得溶液中小心滴入200g AgNO3溶液.实验过程中,生成的AgCl的质量与滴入的AgNO3溶液的质量关系如图所示(提示:NaCl+AgNO3=AgCl↓+NaNO3 ). 加热氯化钾和 二氧化锰混合物一段时间后,剩余固体物质组成:氯化钾,二氧化锰.那么如何设计实验证明? 并用它造句 将2.34gNaCl固体溶于103.4g水中得到不饱和溶液,再向所得溶液中小心滴入200g AgNO3溶液.实验过程中,生成的AgCl的质量与滴入的AgNO3溶液的质量关系如图所示(提示:NaCl+AgNO3=AgCl↓+NaNO3 ).(1) 由离子构成的物质(除氯化钾)再多写由原子构成的物质 由分子构成的物质 塑料牌号大全 将2.34G的NaCl固体将2.34gNaCl固体溶于103.4g水中得到不饱和溶液,再向所得溶液中小心滴入200g AgNO3溶液.将2.34gNaCl固体溶于103.4g水中得到不饱和溶液,再向所得溶液中小心滴入200g AgNO3溶液.实验过 硫酸烟雾的定义 把戏的意思 将2.34gNaCl固体溶于103.4g水中得到不饱和溶液,再向所得溶液中 硫酸烟雾的危害 在太空失重的情况下,水是什么形状? 我要问连通器液面为什么一直是平的你们别给我拿U形的那种连通器来说. 锌+硫酸 黑烟雾请问锌粉和一些杂志在里面,添加硫酸产生黑烟,好刺鼻,差点害死我,是什么东西在里面呢? 实验室用51g 2%的H2O2溶液和一定量的MnO2制取O2 (1)51g 2%的H2O2溶液中,含有H2O2()g,是()mol H2O2(2)计算完全反映后产生氧气的物质的量(写出计算过程) 在太空失重情况下,水是什么形状快啊,急用. 氨气怎么稀释 氧气怎样用化学式表示? 原子吸收法与紫外可见分光光度法从原理有哪些相同点与不同点 氨气泄漏如何稀释降毒 氧气的化学式 石墨是不是原子晶体.为什么 用水稀释氨气的原理 A3分解纯是不是氢氧化纳 原子就是一种元素的最小单位了,它是一个一个的,比如“一个碳原子”是指这种元素的一个实体.原子还可以元素是指某意种物质,比如 碳C 它是“总述”,碳原子,碳分子都属于碳元素的范畴.分 氯化钾是由什么构成求大神帮助 初三科学~高手进!在长江三角洲河珠江三角洲地区,农民将低洼地挖成塘,挖出的泥土堆在塘边成基,在基上种桑,桑叶养蚕,蚕粪下塘养鱼,塘泥又作为桑树的肥料.请根据上述“桑基鱼塘”生态农 核素是指同种元素的原子,还是指所有元素的原子 Fe3O4若看做"混合氧化物"时,可改写成FeO·Fe2O3,根据化合价规律和前述写法,则Pb3O4(四氧化三铅)可改写为2PbO·PbO2(Pb的化合价为+2价,+4价).请问这规律是什么?有回答再给分. 一定温度下,向饱和氢氧化纳溶液中加入一定量的纳块,充分反应后恢复到原来温度,溶液的pH为什么不变? 关于元素,原子等基本粒子(初三的)关于元素我还是不明白1.定义:是具有相同核电荷数(质子数)的同一类原子的总称.(在这里,离子是带电荷的原子)2.原子和离子的区别:原子不显电性,离 破水是什么样子的 明天就是预产期了,宝宝依旧很淡定,胎动比平时有些增加.前天早上起来阴道流出一股水,然后就再也没有流,今天早上起来又是一股水流出来,到现在也没有再流第二次,请问 为什么我家猪烧熟后骨头是黄色的 能说的仔细点吗?我听说是病猪 打的青霉素所以骨头是黄色的 为什么是黄色的骨头还有什么可能 有对人体不好的原因吗? 为什么连通器液面总是相平具体 水的眼泪是什么样子的?如题 烧出来的米饭里有黄色的一粒粒的东西是什么 原子吸收分光光义计和紫外可见分子吸收分光光度计在仪器装置上有哪些异同点?为什 手机掉水里之后怎么处理?如题 今天不小心手机就掉到水里了,诺基亚6020,会造成什么后果么? 自由基的生物学作用是什么? 连通器中各页面保持相平的条件是呃、、准确的~记得几个回答貌似不大准…… 如何到水下去如题 谢谢了 高中化学 用惰性电极电解K2SO4方程式怎么写? 原子吸收与紫外,红外,可见的异同点与优缺点 某化学小组为测定一定质量的某铜铝混合物中铜的质量分数,设计了如下方案方案一铜铝混合物 +足量溶液A 充分反应后测定生成气体体积方案二铜铝混合物 +足量溶液B 充分反应后测定余下固 惰性电极在电解池里面有什么用啊, 一幅漫画图中有一只鸟在水上看一根管子是直的,而鱼儿看到的却是弯的.看图作文不同的人在不同立场,知识背景,环境下,看问题的方式也不同,没有绝对的对与错,我们需要做的只是换个角度 水的原理是怎样的?如题 为什么脏的东西放到水里会溶解掉? 鱼翅、燕窝、鲍鱼、海参、熊掌...等哪个最贵?这些非普通食品哪个最贵?哪个最好吃?大家随便发言啊,说点什么都行. 液相色谱梯度洗脱我用岛津的LC-10A液相色谱仪做三七药材的梯度洗脱(10版药典),停止时间设的65分钟 ,可是30分钟的时候时间程序就停了(run的指示灯灭了). 为了测定一定质量的铜铝混合物中铜的质量分数,某化学课外活动小组设计了如下两个方案:第一问,究竟是哪个方案好,请专家作答 俄防长:叙利亚例子表明恐怖分子获得化女子当街跳舞一丝不挂 众人围观无人给温州将军大酒店门口10个窨井盖突然炸杭州文一路超市门口 年轻流浪姑娘产下为养老保障拾遗补缺 多元化养老日渐“马英九宣示向黑心厂商全面开战:统统揪火车退票费四舍五入 今后将精确至0.政府年终突击花钱遭质疑 专家称与预算今年年底 杭州-深圳每天开行6对动车圆通就快递单个人信息被卖致歉 网民不杭州市区全面启动机动车“油改气”工程新旅游法实施将满月 导游不管购物反遭俄媒议论“中国反腐经验” 称中国采取阿富汗16名总统候选人被取消资格 1辛格访华获“不寻常待遇” 两国握手世19岁女孩把自己包装成富家女 梦想嫁财政部将续发行280亿元记账式附息国杭州地铁4号线开通后1号线票价将下降中铁建出台招待费管理办法 单张发票控京津冀等六省区市领导商议大气污染防治安监总局:呼吸类防护品合格率达96.【作业点评】快来看我画的是不是项链很最伤孩子的10句话,请你嘴下留情!Boehringer EGFR TK净空法师法语:人死为羊,羊死为人,互这些票是股权质押“重灾区”,你有吗?走进深圳茶博会 闲看参展茶企精彩亮点冬日不单调,跳入色彩的海洋!卧槽!成都二环车位50万抢破头,三环这些症状告诉你,你该补血了仁恒董事局主席钟声坚:别瞎操心楼市睡朋友圈里好看又装逼的照片都是怎么拍的许婧用45万公里的距离,忘记陈赫给的ADK发布主题为“遇见故乡”系列视频净空法师法语:念阿弥陀佛是最高明的养小鲜肉老干部都在忙着熬鸡汤,总有一瓢每一种孤独都有陪伴丨2015心理学书什么是认知风格心灵的激情:弗洛伊德传 | 201温格:再也不怕曼城来挖人了另类刺激体验:人死亡时会经历一些什么给我爱过的每一个男孩
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘