[Android初级]Android程序监听网络的连接状况,This is a demo!

来源:互联网 发布:网络监控摄像头调试 编辑:程序博客网 时间:2024/05/13 05:18

在很多的实际Android程序中,会经常性的遇到wifi断开或者手机3G网开关断开后 App提示的网络异常提醒,其实这些小功能的解决方案是很多的,现在我提供了一个比较多见的demo,用于学习参考。

首先,要了解一下BroadcastReceiver,这是Android中的四大组件之一,有着很强大的功能,主要用于监听系统全局的广播信息,也可以自己定义接受自己设定的带有自定义功能的Broadcast Intent .

然后我们开始实行监听网络状态的功能吧!

(1)先创建一个BroadcastReceiver的子类

/**  * 主要是监听手机系统中网络状态的信息  * @author jan */public class NetworkStateReceiver extends BroadcastReceiver {private static final String NetworkTag="NetworkStateTag";//网络连接的状态管理类private ConnectivityManager cm;@Overridepublic void onReceive(Context context, Intent intent) {cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo mobileNetInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);NetworkInfo wifiNetInfo = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);if(mobileNetInfo.isConnected()||wifiNetInfo.isConnected()){Log.d(NetworkTag, "network is working");ToastUtil.show(context, "网络无障碍");}else{Log.d(NetworkTag, "network is not work");ToastUtil.show(context, "网络出现故障!");}}}
(2)在AndroidManifest.xml中配置如下配置即可:

<receiver android:name=".ui.NetworkStateReceiver">           <intent-filter>               <action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>           </intent-filter>       </receiver>

这个时候你的系统如果出现断网或者网络连接成功 后 就会有提示。微笑

0 0
原创粉丝点击