[Android]推断网络连接是否可用
/**
* 推断移动网络是否开启
*
* @param context
* @return
*/
public static boolean isNetEnabled(Context context) {
TelephonyManager tm = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
if (tm != null) {
if (tm.getNetworkType() != TelephonyManager.NETWORK_TYPE_UNKNOWN) {
Log.i("sjf", "移动网络已经开启");
return true;
}
}
Log.i("sjf", "移动网络还未开启");
return false;
} /**
* 推断WIFI网络是否开启
*
* @param context
* @return
*/
public static boolean isWifiEnabled(Context context) {
WifiManager wm = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
if (wm != null && wm.isWifiEnabled()) {
Log.i("sjf", "Wifi网络已经开启");
return true;
}
Log.i("sjf", "Wifi网络还未开启");
return false;
} /**
* 推断移动网络是否连接成功
*
* @param context
* @return
*/
public static boolean isNetContected(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (cm != null && info != null && info.isConnected()) {
Log.i("sjf", "移动网络连接成功");
return true;
}
Log.i("sjf", "移动网络连接失败");
return false;
} /**
* 推断WIFI是否连接成功
*
* @param context
* @return
*/
public static boolean isWifiContected(Context context) {
ConnectivityManager cm = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo info = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (info != null && info.isConnected()) {
Log.i("sjf", "Wifi网络连接成功");
return true;
}
Log.i("sjf", "Wifi网络连接失败");
return false;
} /**
* 推断移动网络和WIFI是否开启
*
* @param context
* @return
*/
public static boolean isNetWorkEnabled(Context context) {
return (isNetEnabled(context) || isWifiEnabled(context));
} /**
* 推断移动网络和WIFI是否连接成功
* @param context
* @return
*/
public static boolean isNetworkConnected(Context context) {
return (isWifiContected(context) || isNetContected(context));
}
操作Wifi须要AndroidManifest.xml在进行一些配置:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE"></uses-permission>
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
WIFI 的主要操作权限有四个:
CHANGE_NETWORK_STATE :同意改动网络状态的权限。
CHANGE_WIFI_STATE :同意改动 WIFI 状态的权限。
ACCESS_NETWORK_STATE :同意訪问网络状态的权限。
ACCESS_WIFI_STATE :同意訪问 WIFI 状态的权限。
[Android]推断网络连接是否可用的更多相关文章
- Android中判断网络连接是否可用及监控网络状态
Android中判断网络连接是否可用及监控网络状态 作者: 字体:[增加 减小] 类型:转载 获取网络信息需要在AndroidManifest.xml文件中加入相应的权限,接下来详细介绍Android ...
- android中判断网络连接是否可用
一.判断网络连接是否可用 public static boolean isNetworkAvailable(Context context) { ConnectivityManager cm = (C ...
- android 检查网络连接状态实现步骤
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限. <uses-permission android:name="android.permission.AC ...
- Android检测网络连接
Android检测网络连接 import android.app.AlertDialog; import android.content.Context; import android.content ...
- android判断网络连接状态、联网类型、运营商
/** * 获取上网方式 * * @param mContext * @return */ public static String getNetType(Context mContext) { St ...
- android推断是否连接wifi和网络状态的推断
<span style="font-size:18px;">// 是否连接WIFI public static boolean isWifiConnected(Cont ...
- Android 检测网络连接状态
Android连接网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置. 首先,要判断网络状态,需要有相应的权限,下面为权限代码(Androi ...
- android当前网络连接类型判断
package net.nyist.netState; import android.content.Context; import android.net.ConnectivityManager; ...
- android检测网络连接状态示例讲解
网络的时候,并不是每次都能连接到网络,因此在程序启动中需要对网络的状态进行判断,如果没有网络则提醒用户进行设置 Android连接首先,要判断网络状态,需要有相应的权限,下面为权限代码(Andro ...
随机推荐
- E20170906-mk
portrait n. 肖像,肖像画; 模型,标本; 半身雕塑像; 人物描写; orientation n. 方向,定位,取向,排列方向; 任职培训; (外交等的) 方针[态度]的确定; 环境判 ...
- set()集合的概念与一般操作
1.概念 set集合是python的一种基本数据类型,其特点为: 1.元素不重复(可以利用这条性质除去重复元素) 2.在集合中无序 3.元素可hash(int,str,bool,tuple) set集 ...
- Python迭代器(斐波拉切数列实例)
将一个容器通过iter()函数处理后,就变成了迭代器.迭代器有2个魔法方法__iter__.__next__,一个迭代器必须实现__iter__,这个方法实际上是返回迭代器本身(return self ...
- POJ 3630 trie树
Phone List Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 26559 Accepted: 8000 Descripti ...
- Windows phone开发 网络编程之HttpWebRequest
HttpWebRequest和WebClient的区别1,HttpWebRequest是个抽象类,所以无法new的,需要调用HttpWebRequest.Create();2,其Method指定了请求 ...
- mysql Workbench新建数据库连接时提示SSl not enabled的问题
在使用workbench时会弹出以下的对话框,不过这不影响使用,点击ok之后对话框关闭,接着直接点击close就行了,之后会显示已经连接上了数据库.具体ssl的方面还没研究,等研究了再贴
- 省市区县的sql语句——城市
/*SQLyog v10.2 MySQL - 5.5.48 : Database - 省市县****************************************************** ...
- ★Java语法(七)——————————循环语句
package 自我总结; public class 循环语句 { public static void main(String[] args) { // while 循环 // 用法: // whi ...
- 学习廖雪峰的Python教程之第一个Python程序
一.命令行模式和Python交互模式的区分 命令行模式: Python交互模式 二.文本编辑器 1.绝对不能用Word和Windows自带的记事本.Word保存的不是纯文本文件,而记事本会自作聪明地在 ...
- 三维重建:SFM中BA的并行化
1. BA在重建中的作用 借鉴于运动中重建的方法,BA引入SLAM过程,而传统的滤波方法引入BA是跟随闭环检测出现. 1.1 BA在滤波方法中的嵌入 PTAM 1.2 BA在闭环检测之后的应用 在三维 ...