zoukankan      html  css  js  c++  java
  • android之检測是否有网络

    主要是用来检測是否有网络,假设没有,就去wifi里面去进行设置网络。。。

      以下贴一下主要代码:

    private void checkNetWorkInfo() {
    		if (!Tools.isNetworkAvailable(this)) {
    			new AlertDialog.Builder(this)
    					.setTitle("提示!")
    					.setIcon(android.R.drawable.ic_dialog_info)
    					.setMessage("检測到你还没开启网络,请开启")
    					.setNegativeButton("取消", null)
    					.setPositiveButton("开启",
    							new DialogInterface.OnClickListener() {
    
    								@Override
    								public void onClick(DialogInterface dialog,
    										int which) {
    									startActivity(new Intent(
    											Settings.ACTION_WIRELESS_SETTINGS));// 进入无线网络配置界面
    									startActivity(new Intent(
    											Settings.ACTION_WIFI_SETTINGS)); // 进入手机中的wifi网络设置界面
    								}
    							}).show();
    		}
    	}

    isNetworkAvailable里面的代码:

    /*
    	 * 推断是否有网络
    	 */
    	public static boolean isNetworkAvailable(Context context) {
    		ConnectivityManager cm = (ConnectivityManager) context
    				.getSystemService(Context.CONNECTIVITY_SERVICE);
    		if (cm == null) {
    			return false;
    		} else {
    			// 打印全部的网络状态
    			NetworkInfo[] infos = cm.getAllNetworkInfo();
    			if (infos != null) {
    				for (int i = 0; i < infos.length; i++) {
    					// Log.d(TAG, "isNetworkAvailable - info: " +
    					// infos[i].toString());
    					if (infos[i].getState() == NetworkInfo.State.CONNECTED) {
    						Log.d(TAG, "isNetworkAvailable -  I " + i);
    					}
    				}
    			}
    
    			// 假设不过用来推断网络连接      
    			// 则能够使用 cm.getActiveNetworkInfo().isAvailable();
    			NetworkInfo networkInfo = cm.getActiveNetworkInfo();
    			if (networkInfo != null) {
    				Log.d(TAG,
    						"isNetworkAvailable - 是否有网络: "
    								+ networkInfo.isAvailable());
    			} else {
    				Log.d(TAG, "isNetworkAvailable - 完毕没有网络!

    "); return false; } // 1、推断是否有3G网络 if (networkInfo != null && networkInfo.getType() == ConnectivityManager.TYPE_MOBILE) { Log.d(TAG, "isNetworkAvailable - 有3G网络"); return true; } else { Log.d(TAG, "isNetworkAvailable - 没有3G网络"); } // 2、推断是否有wifi连接 if (networkInfo != null && networkInfo.getType() == ConnectivityManager.TYPE_WIFI) { Log.d(TAG, "isNetworkAvailable - 有wifi连接"); return true; } else { Log.d(TAG, "isNetworkAvailable - 没有wifi连接"); } } return false; }



     

  • 相关阅读:
    sbt设置
    scala高级内容(二)
    scala高级内容(一) Case Class
    xubuntu手记
    ScalaTour 2.函数
    ScalaTour-1.基础
    springboot对jsp模板引擎的支持
    springboot对Thymeleaf模板引擎的支持
    SpringBoot接收参数的七种方式
    idea快捷代码提示和修改
  • 原文地址:https://www.cnblogs.com/claireyuancy/p/6821946.html
Copyright © 2011-2022 走看看