Android 网络状态检测
package com.example.administrator.yunstore.net; import android.app.AlertDialog;
import android.content.ComponentName;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.ConnectivityManager;
import android.net.NetworkInfo; import com.example.administrator.yunstore.R; /**
* Created by Administrator on 2016/10/20.
*/ public class CheckNetException{ private ConnectivityManager connectivityManager;
private Context context;
public CheckNetException(Context context){
this.context=context;
} /**
* @return 网络是否连接
*/
public boolean checkNetConn() { //得到网络链接管理器
connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
//获取网络链接信息
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
//判断网络是否链接
if (activeNetworkInfo != null) {
if (activeNetworkInfo.isConnected()) {
return true;
} else {
return false;
}
}
return false;
} /**
* 设置wifi
*/
public void setNetWork(){
AlertDialog.Builder alert=new AlertDialog.Builder(context);
alert.setIcon(R.drawable.set);
alert.setTitle("网络提示信息");
alert.setMessage("网络不可用,如果继续,请先设置网络!");
alert.setPositiveButton("设置网络", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) { Intent intent = null;
/**
* 判断手机系统的版本!如果API大于10 就是3.0+
* 因为3.0以上的版本的设置和3.0以下的设置不一样,调用的方法不同
*/
if (android.os.Build.VERSION.SDK_INT > 10) {
intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS);
} else {
intent = new Intent();
ComponentName component = new ComponentName(
"com.android.settings",
"com.android.settings.WirelessSettings");
intent.setComponent(component);
intent.setAction("android.intent.action.VIEW");
}
context.startActivity(intent);
}
});
alert.setNegativeButton("暂不设置", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) { }
});
alert.create();
alert.show();
} /**
* 判断网络为GPRS还是WIFI
* 返回1:GPRS;
* 返回2:WiFi;
* 返回3:error;
*/
public int judgeNew(){
NetworkInfo.State gprs = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
NetworkInfo.State wifi = connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();
if(gprs == NetworkInfo.State.CONNECTED || gprs == NetworkInfo.State.CONNECTING){
// Toast.makeText(context, "This is gprs", Toast.LENGTH_SHORT).show();
return 1;
}
if(wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING){
//Toast.makeText(context, "This is wifi", Toast.LENGTH_SHORT).show();
return 2;
}
return 3;
} }
Android 网络状态检测的更多相关文章
- 如何消除原生Android网络状态上的惊叹号
喜欢使用原生Android系统的朋友可能会发现自己的状态栏信号图标上经常有一个惊叹号标志. 这是怎么回事呢?原因是Android为了对网络状态进行检测,采用了一种叫做captive detection ...
- Phonegap学习点滴(2) -- 网络状态检测
Phonegap学习点滴(2) -- 网络状态检测 http://blog.csdn.net/x251808026/article/details/16992943 方法一:在MainActivit ...
- SDWebImage -- 封装 (网络状态检测,是否打开手机网络下下载高清图设置)
对SDWebImage 进行封装,为了更好的节省用户手机流量,并保证在移动网络下也展示高清图,对使用SDWebImage 下载图片之前进行逻辑处理,根据本地缓存中是否有缓存原始的图片,用户是否打开移动 ...
- Android网络状态监控
Android 监控网络状态 在Android网络应用程序开发中,经常要判断网络连接是否可用,因此经常有必要监听网络状态的变化.android的网络状态监听可以用BroadcastReceiver来接 ...
- [android网络有效性检测] NetworkMonitor代码造成内存泄漏
造成内存泄漏的log如下: E StrictMode: A resource was acquired at attached stack trace but never released. See ...
- android 网络状态判断【转】
import java.net.InetAddress; import android.app.Activity;import android.content.Context;import andro ...
- Android 网络状态的监控
1 http://www.cnblogs.com/qingblog/archive/2012/07/19/2598983.html 2
- android 网络连接判断
Android 网络判断类,用来判断网络状态 使用方法: (1)先初始化 //初始化网络状态检测类 NetworkStateManager.instance().init(this); (2)判断是否 ...
- iOS开发 -------- 网络状态监测
一 示例代码 需要先把第三方Reachability下载导入到工程中 下载网址 https://github.com/tonymillion/Reachability 1 封装网络工具类 Netw ...
随机推荐
- sh1.shell脚本练习
练习: 1.写一个脚本 判断当前系统上是否有用户的默认shell为bash 如果有,就显示其中一个的用户名:否则,就显示没有这类用户. #!/bin/bash grep "bash$&quo ...
- swift 的枚举、结构体、类
一.Swift的枚举 枚举是一系相关联的值定义的一个公共的组类型,同时能够让你在编程的时候在类型安全的情况下去使用这些值.Swift中的枚举比OC中的枚举强大得多, 因为Swift中的枚举是一等类型, ...
- tp框架实现验证码
今天来看一个小插件. tp框架是怎么实现验证码的. 又到了我们千篇一律的时候了,首先呢,先做一个用来显示的html界面名为:zhuce.html <!DOCTYPE html PUBLIC &q ...
- MVC 解决 readonly 问题
<input type="text" class="form-control" name="UR_UserName" value=&q ...
- JavaScript代码优化指南
1. 将脚本放在页面的底部 <script src="./jquery.min.js"></script> <script src="./i ...
- 【Java EE 学习 77 上】【数据采集系统第九天】【通过AOP实现日志管理】【通过Spring石英调度动态生成日志表】【日志分表和查询】
一.需求分析 日志数据在很多行业中都是非常敏感的数据,它们不能删除只能保存和查看,这样日志表就会越来越大,我们不可能永远让它无限制的增长下去,必须采取一种手段将数据分散开来.假设现在整个数据库需要保存 ...
- windows server 2008禁止ping
在cmd命令行中通过ping一个主机名.域名或ip地址可以获取到该机器的ip.操作系统等很多信息,处于安全考虑,很多时候不希望服务器被ping,在windows server 2008 r2可以这样操 ...
- 用 Blend 给Windows Phone 应用创建 示例数据
前言 创建 示例数据(Sample Data) 是提高程序开发效率的一个很有效方法,有了它,我们调UI的时候就不必每次都运行应用,然后在手机上观看页面效果了,配合 “AlignmentGrid.pn ...
- 利用C# Winform做Windows系统任务栏
最近公司做一个考试系统,需要一个答题栏,要求:占用屏幕上方一部分区域,而且始终置顶,当其他窗口最大化时"答题栏"始终置前并且不遮挡最大化窗口的任何部分!就像windows任务栏一样 ...
- 基于.NET平台常用的框架整理
自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到,就 ...