Android系列之如何判断网络链接状态
2010-08-23 01:23:00 来源:WEB开发网昨天晚上又失眠!最近一些事情让我很郁闷!哎!!
言归正传下面咱们讨论下Android手机判断网络链接状态的技术实现吧
目前Android操作系统的手机大部分支持WIFI,GSM,3G网络通信,但是每次链接到网络时只能选择一种链接方式,
比如运营商定制的,还必须要求特定的网络环境(CMWAP,CTWAP等)如果要切换网络还需要先关闭现有的网络,
然后再启动新的网络,这个转换过程还需要一定的时间,
可能程序这时还需要知道心的网络是否链接成功后自动登录到新的网络服务器中,
那怎么知道几时链接成功呢?这个时间需要多久呢?
也许用一个线程去监听网络状态是否链接成功;
我们可以用另外一种方法,PhoneStateListener
没错,你没看错,就是用PhoneStateListener。
很多应用PhoneStateListener都是监听来电去电,PhoneStateListener还可以监听网络断开、
正在连接和连接成功。
1 final TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); 2 mTelephonyMgr.listen(new PhoneStateListener(){ 3 4 @Override 5 public void onDataConnectionStateChanged(int state) { 6 switch(state){ 7 case TelephonyManager.DATA_DISCONNECTED://网络断开 8 break; 9 case TelephonyManager.DATA_CONNECTING://网络正在连接10 break;11 case TelephonyManager.DATA_CONNECTED://网络连接上12 break;13 }14 }15 16 }
PhoneStateListener.LISTEN_DATA_CONNECTION_STATE);
我们只要重载onDataConnectionStateChanged方法,根据state判断做相应的处理。
- ››Android 当修改一些代码时,使用什么编译命令可以最...
- ››Android 如何添加一个apk使模拟器和真机都编译进去...
- ››Android 修改Camera拍照的默认保存路径
- ››Android 如何修改默认输入法
- ››如何检查oracle的归档空间是否满了
- ››如何在浏览器中打开PDF文件并实现预览的思路与代码...
- ››如何改Win7系统我的文档保存位置
- ››android开发中finish()和System.exit(0)的区别
- ››Android手势识别简单封装类
- ››android中查看项目数字证书的两种方法
- ››Android中获取IMEI码的办法
- ››android 相机报错 setParameters failed