//判断网络,静态注册广播 IntentFilter filter=new IntentFilter(); filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION); //jt是初始化内部类的名字 getContext().registerReceiver(jt,filter);/** * 判断网络的方法 */ class JingTai extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)) { ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = cm.getActiveNetworkInfo(); if (info != null && info.isAvailable()) { //网络连接 String name = info.getTypeName(); if (info.getType() == ConnectivityManager.TYPE_WIFI) { //WIFI网络 Toast.makeText(context, "WiFi网络", Toast.LENGTH_SHORT).show(); } else if (info.getType() == ConnectivityManager.TYPE_ETHERNET) { //有线网络 Toast.makeText(context, "有线网络", Toast.LENGTH_SHORT).show(); } } else { //网络断开 Toast.makeText(context, "网络断开,从数据库获取", Toast.LENGTH_SHORT).show(); list = dao.select(); } } } } //销毁 @Override public void onDestroy() { super.onDestroy(); if(jt!=null){ getContext().unregisterReceiver(jt); } }
BroadcastReceiver广播判断网络
最新推荐文章于 2021-12-25 11:45:20 发布