码迷,mamicode.com
首页 > 其他好文 > 详细

网络状态获取

时间:2016-12-30 22:27:53      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:network

  1. 需要配置权限

  在AndroidManifest.xml 中添加代码:

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

2. 通过ConnectivityManager类来进行编码操作。

public void getNetworkState() {
    ConnectivityManager connManager = (ConnectivityManager) this.getSystemService(CONNECTIVITY_SERVICE);
    // 获取代表联网状态的NetWorkInfo对象
    NetworkInfo networkInfo = connManager.getActiveNetworkInfo();
    // 获取当前的网络连接是否可用
    if (null == networkInfo) {
        Toast.makeText(this, "当前的网络连接不可用", Toast.LENGTH_SHORT).show();
        //当网络不可用时,跳转到网络设置页面
        startActivityForResult(new Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS), 1);
    } else {
        boolean available = networkInfo.isAvailable();
        if (available) {
            Log.i("通知", "当前的网络连接可用");
            Toast.makeText(this, "当前的网络连接可用", Toast.LENGTH_SHORT).show();
        } else {
            Log.i("通知", "当前的网络连接不可用");
            Toast.makeText(this, "当前的网络连接不可用", Toast.LENGTH_SHORT).show();
        }
    }
    NetworkInfo.State state = connManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
    if (NetworkInfo.State.CONNECTED == state) {
        Log.i("通知", "GPRS网络已连接");
        Toast.makeText(this, "GPRS网络已连接", Toast.LENGTH_SHORT).show();
    }
    state = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
    if (NetworkInfo.State.CONNECTED == state) {
        Log.i("通知", "WIFI网络已连接");
        Toast.makeText(this, "WIFI网络已连接", Toast.LENGTH_SHORT).show();
    }
    //// 跳转到无线网络设置界面
    // startActivity(new
    // Intent(android.provider.Settings.ACTION_WIRELESS_SETTINGS));
    //// 跳转到无限wifi网络设置界面
    // startActivity(new
    // Intent(android.provider.Settings.ACTION_WIFI_SETTINGS));
}

技术分享


网络状态获取

标签:network

原文地址:http://kz1080.blog.51cto.com/3369782/1887668

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!