Android判断网络是否断开(WIFI 状态)--ConnectivityManager
2014-02-10 14:08
399 查看
Android判断网络是否断开
public boolean isNetworkAvailable(Context act) {
ConnectivityManager cm = (ConnectivityManager)act.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
if(networkInfo != null && networkInfo.isConnected())
{
return true;
}
return false;
}
//广播监控:
private void setBroadcast()
{
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mReceiver, intentFilter);
}
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
String action = intent.getAction();
if(action.equals(ConnectivityManager.CONNECTIVITY_ACTION))
{
ConnectivityManager localConnectivityManager = (ConnectivityManager) mContext
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo localNetworkInfo = (localConnectivityManager == null ? null : localConnectivityManager
.getActiveNetworkInfo());
if (localNetworkInfo != null) {
if (localNetworkInfo.isConnected()) {
Log.d(TAG, " MSG_NETWORK..................CONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_CONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
} else {
Log.d(TAG, " MSG_NETWORK................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
} else {
Log.e(TAG, " localNetworkInfo is null, MSG_NETWORK................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
}
}
//WIFI 状态
private void handlerWifiNetworkStatus() {
// TODO Auto-generated method stub
// NetworkInfo info = (NetworkInfo) intent
// .getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
// if (info != null) {
// if (info.isConnected()) {
// Log.d(TAG, " wifi MSG_WIFI...............CONNECT......");
// Message msg = new Message();
// msg.what = FactoryActivity.MSG_WIFI_CONNECT;
// mFactoryActivity.getMainHandler().sendMessage(msg);
// } else {// if (!wifiNetworkInfo.isConnected()){
// Log.d(TAG, " wifi MSG_WIFI................DISCONNECT......");
// Message msg = new Message();
// msg.what = FactoryActivity.MSG_WIFI_DISCONNECT;
// mFactoryActivity.getMainHandler().sendMessage(msg);
// }
// }
WifiManager wifiMng = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = (wifiMng == null ? null : wifiMng.getConnectionInfo());
/* wifi mac ip */
if (wifiInfo != null) {
String wifiMac = wifiInfo.getMacAddress();
Log.d(TAG, " wifiMac->" + wifiMac);
int wifiIP = wifiInfo.getIpAddress();
String ip = int2IP(wifiIP);
Log.d(TAG, " wifiIP->" + ip);
}
/* wifi是否打开 和连接上 */
WifiInfo WifiConnectInfo = wifiMng.getConnectionInfo();
if (wifiMng.isWifiEnabled() && WifiConnectInfo.getIpAddress() != 0) {
Log.d(TAG, " wifi MSG_WIFI...............CONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_WIFI_CONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
} else {
Log.d(TAG, " wifi MSG_WIFI................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_WIFI_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
autoConnectToWifi();
}
public boolean isNetworkAvailable(Context act) {
ConnectivityManager cm = (ConnectivityManager)act.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = cm.getActiveNetworkInfo();
if(networkInfo != null && networkInfo.isConnected())
{
return true;
}
return false;
}
//广播监控:
private void setBroadcast()
{
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
registerReceiver(mReceiver, intentFilter);
}
private BroadcastReceiver mReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
String action = intent.getAction();
if(action.equals(ConnectivityManager.CONNECTIVITY_ACTION))
{
ConnectivityManager localConnectivityManager = (ConnectivityManager) mContext
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo localNetworkInfo = (localConnectivityManager == null ? null : localConnectivityManager
.getActiveNetworkInfo());
if (localNetworkInfo != null) {
if (localNetworkInfo.isConnected()) {
Log.d(TAG, " MSG_NETWORK..................CONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_CONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
} else {
Log.d(TAG, " MSG_NETWORK................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
} else {
Log.e(TAG, " localNetworkInfo is null, MSG_NETWORK................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_NETWORK_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
}
}
//WIFI 状态
private void handlerWifiNetworkStatus() {
// TODO Auto-generated method stub
// NetworkInfo info = (NetworkInfo) intent
// .getParcelableExtra(WifiManager.EXTRA_NETWORK_INFO);
// if (info != null) {
// if (info.isConnected()) {
// Log.d(TAG, " wifi MSG_WIFI...............CONNECT......");
// Message msg = new Message();
// msg.what = FactoryActivity.MSG_WIFI_CONNECT;
// mFactoryActivity.getMainHandler().sendMessage(msg);
// } else {// if (!wifiNetworkInfo.isConnected()){
// Log.d(TAG, " wifi MSG_WIFI................DISCONNECT......");
// Message msg = new Message();
// msg.what = FactoryActivity.MSG_WIFI_DISCONNECT;
// mFactoryActivity.getMainHandler().sendMessage(msg);
// }
// }
WifiManager wifiMng = (WifiManager) mContext.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = (wifiMng == null ? null : wifiMng.getConnectionInfo());
/* wifi mac ip */
if (wifiInfo != null) {
String wifiMac = wifiInfo.getMacAddress();
Log.d(TAG, " wifiMac->" + wifiMac);
int wifiIP = wifiInfo.getIpAddress();
String ip = int2IP(wifiIP);
Log.d(TAG, " wifiIP->" + ip);
}
/* wifi是否打开 和连接上 */
WifiInfo WifiConnectInfo = wifiMng.getConnectionInfo();
if (wifiMng.isWifiEnabled() && WifiConnectInfo.getIpAddress() != 0) {
Log.d(TAG, " wifi MSG_WIFI...............CONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_WIFI_CONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
} else {
Log.d(TAG, " wifi MSG_WIFI................DISCONNECT......");
Message msg = new Message();
msg.what = FactoryActivity.MSG_WIFI_DISCONNECT;
mFactoryActivity.getMainHandler().sendMessage(msg);
}
autoConnectToWifi();
}
相关文章推荐
- Android判断网络状态是否断开
- Android中手机的网络状态(判断是否联网/3G/4G/WIFI)
- Android判断网络状态是否断开+Android完全关闭应用程序+ 本文讲述了Android中不同Activity之间的数据传递 — Bundle对象的实现(-)+Android中Bundle的使用示例
- Android开发之判断网络状态是否断开
- android 中获取网络状态、判断3G、2G、wifi网络、判断wifi是否打开、获取本机地址、获取本机串号IMEI整理
- android判断是否连接wifi和网络状态的判断
- Android判断网络状态是否断开
- android 判断网络状态 (无网络 wifi 数据流量)
- Android中判断网络连接是否可用及监控网络状态
- [置顶] Android开发之强大的网络判断工具,判断是否联网,判断是wifi还是3g网络等java工具代码类
- Android如何判断网络状态是否良好
- Android中判断网络连接是否可用及监控网络状态
- Android杂谈--网络状态判断(3G/WIFI)
- Android中判断有无可用网络(是否是3G或者WIFI网络)
- Android判断网络状态是否可用的
- Android 判断开启网络,wifi是否可用
- Android 判断是否能真正上网(避免连入wifi无网的状态)
- Android判断GPS、wifi、移动网络是否可用的探知函数
- Android检测网络状态,判断当前网络是否可用
- Android 工具类 —— 判断网络连接状态、GPS是否打开、基站信息和手机IMSI码