• android 检查网络是否可用,如果不可用弹出设置,让用户改变



    /** * 校验网络,如果没有网络,返回true * * @return boolean */ @Override public boolean hasInternetConnected() { ConnectivityManager manager = (ConnectivityManager)context .getSystemService(Context.CONNECTIVITY_SERVICE); if (manager != null){ NetworkInfo info = manager.getActiveNetworkInfo(); if(info !=null && info.isConnectedOrConnecting() ){ return true; } } openWirelessSet(); return false; }
    /**
         * 弹出框
         */
        @Override
        public void openWirelessSet() {
            final AlertDialog.Builder builder = new AlertDialog.Builder(context);
            builder.setTitle("提示")
                    .setMessage("请检查您的网络连接")
                    .setPositiveButton("设置", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            Intent intent = new Intent(
                                    Settings.ACTION_WIRELESS_SETTINGS);
                            context.startActivity(intent);
                        }
                    })
                    .setNegativeButton("关闭", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    });
            builder.create().show();
        }

    上面这种方式是我自己用的可以的

    /**
         * 检验网络连接是否可用
         *
         * @return boolean
         */
        @Override
        public boolean validateInternet() {
            ConnectivityManager manager = (ConnectivityManager) context
                    .getSystemService(Context.CONNECTIVITY_SERVICE);
            if(manager != null){
    
                NetworkInfo[] info =manager.getAllNetworkInfo();
                if (info != null){
                    for (NetworkInfo  networkInfo : info){
                        if (networkInfo.getState() == NetworkInfo.State.CONNECTED);
                        return true;
                    }
                }
            }
    
    
            return false;
        }

    这种也看别人用过,不过今天自己测试了一下,自己明明把网络数据给关了,但返回的还是true,不知道为什么(PS:有大神来解释一下呗)

  • 相关阅读:
    input.file上传图片| FileReader h5新特性
    lua的luasocket程序
    nginx的proxy_set_header
    lua的table.sort
    lua的深拷贝和浅拷贝
    nginx的location匹配
    kong后台接口
    一些程序和工具
    lua的模式匹配
    php的一些语法
  • 原文地址:https://www.cnblogs.com/prescheng/p/4992525.html
Copyright © 2020-2023  润新知