Android 网络状态变化的监听
1.在流量网页,时实现断网,提醒等功能。
需要权限
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
2.注册一个BroadcastReceiver来接受网络状态的变化
public class NetworkChange extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager= (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo wifiinfo=connectivityManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if(!networkInfo.isConnected()&&!wifiinfo.isConnected()){
/**
*
*/
Toast.makeText(context,"网络不可用!",Toast.LENGTH_SHORT).show();
}else{
if(wifiinfo.isConnected()){
Toast.makeText(context,"wifi连接中!",Toast.LENGTH_SHORT).show();
}
if(networkInfo.isConnected()){
Toast.makeText(context,"流量连接中!",Toast.LENGTH_SHORT).show();
}
}
}
}
3.在activity总注册接收器即可:
public class MainActivity extends AppCompatActivity {
private IntentFilter intentFilter;
private NetworkChange networkChange;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/**
* 监听网络状态
*/
intentFilter=new IntentFilter();
intentFilter.addAction("android.net.conn.CONNECTIVITY_CHANGE");
networkChange=new NetworkChange();
registerReceiver(networkChange,intentFilter);
}
/**
* 动态注册接受者,记得取消注册
*/
@Override
protected void onDestroy() {
super.onDestroy();
unregisterReceiver(networkChange);
}
}
Android 网络状态变化的监听的更多相关文章
- [android] 网络断开的监听
标签: android 网络监听 杂谈 分类: Android [转自] http://blog.sina.com.cn/s/blog_5d5996d001012o07.html 其实手机在网络方面 ...
- Android EditText截获与监听输入事件
Android EditText截获与监听输入事件共有2种方法: 1.第一种方法:使用setOnKeyListener(),不过这种方式只能监听硬键盘事件. edittext.setOnKeyLi ...
- Android Back Home键监听
Android Back Home键监听 Back键的监听 对于Back键的监听比较容易,可以在多个系统回调处拦截,比如在activity的下列方法中都可以收到Back键按下的事件: @Overrid ...
- Android对ScrollView滚动监听,实现美团、大众点评的购买悬浮效果
转帖请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/17761431),请尊重他人的辛勤劳动成果,谢谢! 我之前写 ...
- Android addTextChangedListener(文本监听)参数解释及实现EditText字数监听
由于最近做项目要检测EditText中输入的字数长度,从而接触到了Android中EditText的监听接口,TextWatcher.它有三个成员方法,第一个after很简单,这个方法就是在EditT ...
- Android 5.0 以上监听网络变化
大家好,大概有一个多月没有更新博客了,我是干什么去了呢?很明显,程序员当然要加班……这一次跟大家分享一下新项目的一些心得. 监听网络变化在开发中是经常用到的,例如我们断网有一些友好的提示,或者根据不同 ...
- Android学习——动态注册监听网络变化
新建一个BroadcastTest项目,然后修改MainActivity中的代码,如下: public class MainActivity extends AppCompatActivity { p ...
- andriod开发,简单的封装网络请求并监听返回.
一.为什么封装 因为android 4.0 以后的发送网络请求必须要放到异步线程中,而异步线程必须跟handle合作才能更新主线程中的UI,所以建议用一个类继承handler来异步处理网络请求. 二. ...
- Android App用MulticastSocket监听组播,为什么连接到不同路由、在不同手机上跑,有的能收到有的收不到
---------------------------!! 转载请注明出处 !!----------------------- 一个项目,利用wifi组播在局域网内发现设备.却发现在有的路由器上能 ...
随机推荐
- PHP在Linux的Apache环境下乱码解决方法
在windows平台编写的php程序默认编码是gb2312 而linux和apche默认的编码都是UTF-8 所以windows平台编写的php程序传到linux后,浏览网页中文都是乱码. 如果手工将 ...
- 【从零开始】【Java】【2】项目最开始都有什么鬼
闲聊 刨其根知其底. 让我们从一开始就慢嚼细咽. 开始 先来看下项目都有什么: 项目结构图 pom文件图 项目结构 项目=核心代码+依赖管理文件+说明文件+IDE配套文件+外部依赖包: 核心代码:sr ...
- (转)基于MVC4+EasyUI的Web开发框架形成之旅--权限控制
http://www.cnblogs.com/wuhuacong/p/3361351.html 我在上一篇随笔<基于MVC4+EasyUI的Web开发框架形成之旅--框架总体界面介绍>中大 ...
- 网络是通的 yum用不了
Loaded plugins: fastestmirror, langpacks One of the configured repositories failed (Unknown),and yum ...
- selenium的显示等待和隐式等待区别
1.selenium的显示等待 原理:显式等待,就是明确的要等到某个元素的出现或者是某个元素的可点击等条件,等不到,就一直等,除非在规定的时间之内都没找到,那么就跳出Exception.(简而言之:就 ...
- springboot使用aop做日志
一.引入jar包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...
- MAVEN的结构认识篇
1.maven的结构认识 src main com imooc calss test com imooc test resources pom.xml 以上是maven项目存在的必须结构!如下图 te ...
- C# 实现自定义的USB设备与上位机进行通信(上位机部分)
因为以前没用过USB,对USB也不了解,于是上网查了很多资料,不过网上的资料都是零零散散,不清不楚的,于是我自己总结了一下,下面几个链接是网上这么多零散资料里,我觉得比较有参考意义的. USB设备连接 ...
- 【codeforces 799C】Fountains
[题目链接]:http://codeforces.com/contest/799/problem/C [题意] 你有两种不同的货币; 余额分别为c和d 然后有n种商品; 每种商品只能由两种货币中的某一 ...
- 获取DATA的数据
num=DataTable("参数名",dtGlobalSheet) 'systemutil.Run "C:\Program Files (x86)\HP\QuickTe ...