一个简单的网络判断的方法

首先是Utile工具类
如果返回的值是-1(没有网络)

public static int getNetype(Context context) {


        int netType = -1;
        ConnectivityManager connMgr = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();


        if (networkInfo == null) {
            return netType;
        }
        int nType = networkInfo.getType();
        if (nType == ConnectivityManager.TYPE_MOBILE) {
            netType = 2;
        } else if (nType == ConnectivityManager.TYPE_WIFI) {
            netType = 1;
        }
        return netType;

然后在MainActivity类中的具体应用
如果返回值是-1(没网络)跳转到网络设置进行设置
如果返回的不是-1那么加载数据

 plv = (PullToRefreshListView) findViewById(R.id.plv);
        plv.setMode(PullToRefreshBase.Mode.BOTH);

        int netype = Utile.getNetype(this);
        if (netype != -1) {
            Toast.makeText(MainActivity.this, "有网络", Toast.LENGTH_SHORT).show();

            plv.setOnRefreshListener(new PullToRefreshBase.OnRefreshListener2<ListView>() {
                @Override
                public void onPullDownToRefresh(PullToRefreshBase<ListView> refreshView) {
                    plv.postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            list2.clear();
                            new MyTake().execute(url);
                            plv.onRefreshComplete();
                        }
                    }, 1000);

                }

                @Override
                public void onPullUpToRefresh(PullToRefreshBase<ListView> refreshView) {
                    plv.postDelayed(new Runnable() {
                        @Override
                        public void run() {
                            page++;
                            new MyTake().execute("http://api.tianapi.com/it/?key=404a3c62f59023713f86132d20787d76&num=10&page=" + page);
                            plv.onRefreshComplete();
                        }
                    }, 1000);

                }
            });
            new MyTake().execute(url);

        } else {
            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;
                    if (android.os.Build.VERSION.SDK_INT > 10) {  // 3.0以上
                        intent = new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS);
                    } else {
                        intent = new Intent(Intent.ACTION_MAIN);
                        intent.setClassName("com.android.phone", "com.android.phone.NetworkSetting");
                    }
                    startActivity(intent);
                }
            });
            builder.setNegativeButton("取消", null);
            builder.show();
            //Toast.makeText(MainActivity.this, "没有网络", Toast.LENGTH_SHORT).show();


        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值