public class MainActivity extends AppCompatActivity {    private TextView tv;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        tv = (TextView) findViewById(R.id.tv);        initReceiver();    }    /**     * 注册网络监听的广播     */    private void initReceiver() {        IntentFilter timeFilter = new IntentFilter();        timeFilter.addAction("android.net.ethernet.ETHERNET_STATE_CHANGED");        timeFilter.addAction("android.net.ethernet.STATE_CHANGE");        timeFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");        timeFilter.addAction("android.net.wifi.WIFI_STATE_CHANGED");        timeFilter.addAction("android.net.wifi.STATE_CHANGE");        timeFilter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);        registerReceiver(netReceiver, timeFilter);    }    @Override    protected void onDestroy() {        super.onDestroy();        if (netReceiver != null) {            unregisterReceiver(netReceiver);            netReceiver = null;        }    }    BroadcastReceiver netReceiver = new BroadcastReceiver() {        @Override        public void onReceive(Context context, Intent intent) {            String action = intent.getAction();            if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) {                ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(                        Context.CONNECTIVITY_SERVICE);                NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();                if (networkInfo != null && networkInfo.isAvailable()) {                    int type2 = networkInfo.getType();                    String typeName = networkInfo.getTypeName();                    tv.setText(type2 + "--" + typeName);                    switch (type2) {                        case 0://移动 网络    2G 3G 4G 都是一样的 实测 mix2s 联通卡                            Log.d("Feeee", "有网络");                            break;                        case 1: //wifi网络                            Log.d("Feeee", "wifi");                            break;                        case 9:  //网线连接                            Log.d("Feeee", "有网络");                            break;                    }                } else {// 无网络                    Log.d("Feeee", "无网络");                }            }        }    };}

 

更多相关文章

  1. Android中短信拦截解决方案
  2. Android(安卓)TelephonyManager类用法
  3. Android(安卓)-- Button [ 学习笔记 一 ] 原创
  4. Android(安卓)HttpClient网络通信
  5. android 监听开机(关机)
  6. android 呼入电话的监听(来电监听)
  7. Android(安卓)Activity的各种重载方法
  8. Android(安卓)- ToDoList(fragment) 详解
  9. Android--MediaPlayer(实现列表选歌,上一首,下一首,清空播放列表,搜

随机推荐

  1. 命令行编译android apk
  2. 在Android中监视wifi状态
  3. Android(安卓)studio assets error:前言中
  4. android 通过html设置textview的内容不同
  5. android:ImageView选择本地图片并显示
  6. android 设置横屏后,防止oncreate的调用2
  7. Activity到另一个Acivity
  8. Android实现多线程断点下载的方法
  9. 自定义控件:瀑布流水字母
  10. android 检查SD卡是否可用