检查网络连接状态和修改网络连接状态

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


/**
 * 网络未连接时,调用设置方法
 */
private void setNetwork() {
    Toast.makeText(this, "wifi is closed!", Toast.LENGTH_SHORT).show();

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setIcon(R.drawable.ic_launcher);
    builder.setTitle("网络提示信息");
    builder.setMessage("网络不可用,如果继续,请先设置网络!");
    builder.setPositiveButton("设置", new OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            Intent intent = null;
            /**
             * 判断手机系统的版本!如果API大于10 就是3.0+
             * 因为3.0以上的版本的设置和3.0以下的设置不一样,调用的方法不同
             */
            if (android.os.Build.VERSION.SDK_INT > 10) {
                intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS);
            } else {
                intent = new Intent();
                ComponentName component = new ComponentName(
                        "com.android.settings",
                        "com.android.settings.WirelessSettings");
                intent.setComponent(component);
                intent.setAction("android.intent.action.VIEW");
            }
            startActivity(intent);
        }
    });

    builder.setNegativeButton("取消", new OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {

        }
    });
    builder.create();
    builder.show();
}

/**
 * 网络已经连接,然后去判断是wifi连接还是GPRS连接
 * 设置一些自己的逻辑调用
 */
private void isNetworkAvailable() {
    State gprs = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
    State wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
    if (gprs == State.CONNECTED || gprs == State.CONNECTING) {
        Toast.makeText(this, "wifi is open! gprs", Toast.LENGTH_SHORT).show();
    }
    //判断为wifi状态下才加载广告,如果是GPRS手机网络则不加载!
    if (wifi == State.CONNECTED || wifi == State.CONNECTING) {
        Toast.makeText(this, "wifi is open! wifi", Toast.LENGTH_SHORT).show();
        loadAdmob();
    }
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值