Android wiki:04.ConnectivityManager检查是否有可用网络
来源:互联网 发布:孤岛危机2源码 编辑:程序博客网 时间:2024/05/18 02:34
2015/4/12
ConnectivityManager cm = (ConnectivityManager) getSystemService(Activity.CONNECTIVITY_SERVICE);
boolean wifi = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();
boolean sim = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
if (wifi || sim) {// 有开启wifi或者互联网
}else{
}
//-----------------------------------------------------------------------
public class NetUtil {
/**
* 检查用户网络连接情况
* @param context
* @return
*/
public static boolean checkNetConnetion(Context context) {
boolean wifi = isWIFIConnetion(context);
boolean mobile = isMOBILEConnetion(context);
if (mobile) {// 如果是连接移动APN,就获取代理ip的代理端口
readAPN(context);
}
if (mobile || wifi) {
return true;
} else {
return false;
}
}
/**
* 读取APN的代理ip和端口
*
* @param context
*/
private static void readAPN(Context context) {
Uri PREFERRED_APN_URI = Uri.parse("content://telephony/carriers/preferapn");// 4.0模拟器屏蔽掉该权限
// 操作联系人类似
ContentResolver resolver = context.getContentResolver();
// 判断是哪个APN被选中了
Cursor cursor = resolver.query(PREFERRED_APN_URI, null, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
String PROXY = cursor.getString(cursor.getColumnIndex("proxy"));
int PORT = cursor.getInt(cursor.getColumnIndex("port"));
}
}
/**
* 检查是否连接移动网络
*
* @param context
* @return
*/
public static boolean isMOBILEConnetion(Context context) {
ConnectivityManager cManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (info != null) {
return info.isConnected();
}
return false;
}
/**
* 检查wifi是否连接
*
* @param context
* @return
*/
public static boolean isWIFIConnetion(Context context) {
ConnectivityManager cManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (info != null) {
return info.isConnected();
}
return false;
}
}
ConnectivityManager cm = (ConnectivityManager) getSystemService(Activity.CONNECTIVITY_SERVICE);
boolean wifi = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI).isConnectedOrConnecting();
boolean sim = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).isConnectedOrConnecting();
if (wifi || sim) {// 有开启wifi或者互联网
}else{
}
//-----------------------------------------------------------------------
public class NetUtil {
/**
* 检查用户网络连接情况
* @param context
* @return
*/
public static boolean checkNetConnetion(Context context) {
boolean wifi = isWIFIConnetion(context);
boolean mobile = isMOBILEConnetion(context);
if (mobile) {// 如果是连接移动APN,就获取代理ip的代理端口
readAPN(context);
}
if (mobile || wifi) {
return true;
} else {
return false;
}
}
/**
* 读取APN的代理ip和端口
*
* @param context
*/
private static void readAPN(Context context) {
Uri PREFERRED_APN_URI = Uri.parse("content://telephony/carriers/preferapn");// 4.0模拟器屏蔽掉该权限
// 操作联系人类似
ContentResolver resolver = context.getContentResolver();
// 判断是哪个APN被选中了
Cursor cursor = resolver.query(PREFERRED_APN_URI, null, null, null, null);
if (cursor != null && cursor.moveToFirst()) {
String PROXY = cursor.getString(cursor.getColumnIndex("proxy"));
int PORT = cursor.getInt(cursor.getColumnIndex("port"));
}
}
/**
* 检查是否连接移动网络
*
* @param context
* @return
*/
public static boolean isMOBILEConnetion(Context context) {
ConnectivityManager cManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (info != null) {
return info.isConnected();
}
return false;
}
/**
* 检查wifi是否连接
*
* @param context
* @return
*/
public static boolean isWIFIConnetion(Context context) {
ConnectivityManager cManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (info != null) {
return info.isConnected();
}
return false;
}
}
0 0
- Android wiki:04.ConnectivityManager检查是否有可用网络
- ConnectivityManager 判断网络是否可用
- [Android] 检查网络是否可用
- [Android]检查网络是否可用
- Android 检查网络是否可用
- ConnectivityManager判断是否有网络
- ConnectivityManager判断是否有网络
- Android 检查是否有网络
- 检查Android网络连接是否可用
- 检查网络是否可用(Android)
- 检查网络是否可用
- 检查网络是否可用
- Android基础--ConnectivityManager检查网络连接
- 【Android】使用ConnectivityManager与NetworkInfo实现判断当前网络环境是否可用
- Android】使用ConnectivityManager与NetworkInfo实现判断当前网络环境是否可用
- 【Android】使用ConnectivityManager与NetworkInfo实现判断当前网络环境是否可用
- android 判断是否有可用网络
- android项目判断是否有可用网络
- 黑马程序员——Objective-C语言基本知识总结——Foundation框架
- Android wiki:03.android json解折
- SDUToj 2929 人活着系列之芳姐和芳姐的猪(Floyd+枚举)
- select唤醒函数
- Linux发行版:CentOS、Ubuntu、RedHat、Android、Tizen、MeeGo
- Android wiki:04.ConnectivityManager检查是否有可用网络
- Java面试 多线程 生产者消费者
- PHP常用正则表达式
- Android wiki:05.跑马灯文字流动效果(自定义带焦点的view对象)
- wireshark pacp文件的格式
- Android内存泄漏分析及调试
- Android wiki:06.自定义组合控件属性的步骤
- Centos下载文件wget命令详解
- 微信开发出现 redirect-uri参数错误原因是设置回调页面域名不要加HTTP://