检查网络状态(Android3.0以上)

来源:互联网 发布:软件开发个人年终总结 编辑:程序博客网 时间:2024/05/16 16:11

首先添加   检查本机网络状态的权限

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

然后一个检查网络状态的方法,我在这里写成的 checkNetworkState();可以在主方法里面直接调用

private boolean checkNetworkState() {
        boolean net = false;
        //得到网络连接信息
        ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
        //去进行判断网络是否连接
        if (manager.getActiveNetworkInfo() != null) {
            net= manager.getActiveNetworkInfo().isAvailable();
        }

        if (!net) {
            setNetWork();//网络没连接调用的方法
        } else {
            netWorktrue();//网络连接调用的方法
        }

        return net;
    }

这个是网络没连接调用的方法

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("网络提示信息");
        builder.setMessage("网络不可用,如果继续,请先设置网络!");
        builder.setPositiveButton("设置", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialogInterface, int i){
                Intent intent = null;
                //Android系统的网络设置
                intent = new Intent(Settings.ACTION_WIFI_SETTINGS);
                startActivity(intent);
            }
        });
        builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {

            }
        });

        builder.create();//创建并且展示,很重要,不要忘记填了
        builder.show();

如果网络已经连接,那么  网络连接调用的方法也就不需要定义了,直接弄个空方法就行了。


             PS:第一次写博客,肯定有很多不好的地方,请多多指教了