Android笔记之网络状态推断

学向勤中得,萤窗万卷书。这篇文章主要讲述Android笔记之网络状态推断相关的知识,希望能为你提供帮助。
1、首先当然得在 manifest 中加入检查网络状态的权限;

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


2、详细推断步骤 (1)首先要先获得Android 对连接管理的一个类对象。
ConnectivityManager manager = (ConnectivityManager)getSystemService(
Context.CONNECTIVITY_SERVICE);

(2)获得网络链接状态 if (manager.getActiveNetworkInfo() != null) {     networkFlag = manager.getActiveNetworkInfo().isAvailable();   }
(3)假设没有连接,弹出对话框提示用户连接,并在“设置”button里让用户跳转到设置网络界面。 if (! networkFlag) {     AlertDialog.Builder builder = new AlertDialog.Builder(this);               builder.setIcon(android.R.drawable.ic_dialog_alert);               builder.setTitle("网络状态");               builder.setMessage("当前网络不可用。是否设置网络?");               builder.setPositiveButton("设置", new DialogInterface.OnClickListener() {                                     @Override                   public void onClick(DialogInterface dialog, int which) {                       // TODO Auto-generated method stub                   Intent wifiSettingsIntent = new Intent("android.settings.WIFI_SETTINGS");                       startActivity(wifiSettingsIntent);                   }               });               builder.setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {                                     @Override                   public void onClick(DialogInterface dialog, int which) {                       dialog.cancel();                   }               });               builder.create();               builder.show();   }
(4)最后一步,也是比較关键一步,就是在manifest 里声明该Activity 。 假设没做,则会出现“xxx 已经停止执行”,原因显而易见。 问题是,我们曾经都是自己建立的Activity ,知道怎样声明。这里是系统自己的setting , 我们怎样声明呢?
        < PreferenceScreen             android:title="设置网络"             android:summary=" ">             < intent                 android:action="android.intent.action.MAIN"                 android:targetPackage="com.android.settings"                 android:targetClass="com.android.settings.WirelessSettings" />         < /PreferenceScreen>  
在application 里面写上以上代码就可以。【Android笔记之网络状态推断】
  (困惑了好久,最终在一个前辈博客里找到了答案,在此感谢,http://blog.csdn.net/shenyuemei/article/details/8005241)

因为代码简单,所以就不上传DEMO 代码了。








    推荐阅读