心海恋歌 发表于 2015-10-2 14:02:56

启动程序检查网络(wifi,net等),有网络则继续否则退出程序或者进入网络设置界面!

  首先需要有相应的权限,下面为权限代码:
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
  
  //检查网络是否已连接,此方法的返回值的boolean型(true或者false)
  public static boolean isConnect(Context context) {
            // 获取手机所有连接管理对象(包括对wi-fi,net等连接的管理)
      try {
            ConnectivityManager connectivity = (ConnectivityManager) context
                  .getSystemService(Context.CONNECTIVITY_SERVICE);
            if (connectivity != null) {
                // 获取网络连接管理的对象
                NetworkInfo info = connectivity.getActiveNetworkInfo();
                if (info != null&& info.isConnected()) {
                  // 判断当前网络是否已经连接
                  if (info.getState() == NetworkInfo.State.CONNECTED) {
                        return true;
                  }
                }
            }
      } catch (Exception e) {
    // TODO: handle exception
      Log.v("error",e.toString());
    }
            return false;
      }
  
  //用isConnect方法来判断是否连接网络,没有网络退出程序!
  if (isConnect(this)==false)
               {
                  new AlertDialog.Builder(this)
                  .setTitle("网络错误")
                  .setMessage("网络连接失败!")
                  .setPositiveButton("确定", new DialogInterface.OnClickListener() {
                  @Override
      public void onClick(DialogInterface arg0, int arg1) {
         // TODO Auto-generated method stub
         // android.os.Process.killProcess(android.os.Process.myPid());
         Intent startMain = new Intent(Intent.ACTION_MAIN);
         startMain.addCategory(Intent.CATEGORY_HOME);
         startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
         startActivity(startMain);
         System.exit(0);//退出程序
      }
      }).show();
      }
  //如果网络没开启进入网络设置页面
  Intent mintent=new Intent("/");
    ComponentName comp = new ComponentName("com.android.settings","com.android.settings.WirelessSettings");
    mintent.setComponent(comp);
    mintent.setAction("android.intent.action.VIEW");
    startActivityForResult(mintent, 0);
页: [1]
查看完整版本: 启动程序检查网络(wifi,net等),有网络则继续否则退出程序或者进入网络设置界面!