开发者社区> 啊啊啊88jdk> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Android监听手机网络变化

简介: Android监听手机网络变化 手机网络状态发生变化会发送广播,利用广播接收者,监听手机网络变化 效果图 注册广播接收者 …… ...
+关注继续查看

Android监听手机网络变化

手机网络状态发生变化会发送广播,利用广播接收者,监听手机网络变化

效果图

这里写图片描述

注册广播接收者

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="……" >

    ……

    <application
        …… >

        ……

        <!-- 监听网络状态的广播接收者 -->
        <receiver android:name=".receiver.NetworkBroadcastReceiver" >
            <intent-filter>
                <action android:name="android.net.conn.CONNECTIVITY_CHANGE" />
            </intent-filter>
        </receiver>

    </application>
</manifest>

广播接收者

package ……;

import ……;

/**
 * Created by kongqw on 2015/11/23.
 */
public class NetworkBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        try {
            ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo mobileInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
            NetworkInfo wifiInfo = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
            //如果无网络连接activeInfo为null
            NetworkInfo activeInfo = manager.getActiveNetworkInfo();

            if (wifiInfo.isConnected()) {
                // wifi 网络
                Log.i("Network", "wifi 网络");
            } else if (mobileInfo.isConnected()) {
                // 手机网络
                Log.i("Network", "手机网络");
            } else if (null == activeInfo) {
                // 没有网络
                Log.i("Network", "没有网络");
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
android 网络实时监听网络状态变化 及 网络类型判断
android 网络实时监听网络状态变化 及 网络类型判断
0 0
Android 网络改变状态监听
1. 网络状态改变使用静态注册还是动态注册 回答: 动态注册。因为当App关闭后,我们的应用将不再关心网络状态的改变了。 2. 添加必须的权限 3.
593 0
一个Oracle监听问题的网络排查
  今天在梳理一套环境的时候,发现了一个奇怪的问题,应用端连接正常,但是服务端却有些问题。    假设服务端的IP地址为10.129.128.57    使用tnsping本机的服务,竟然抛出了监听的问题。
854 0
Zookeeper 客户端API调用示例(基本使用,增删改查znode数据,监听znode,其它案例,其它网络参考资料)
9.1 基本使用 org.apache.zookeeper.Zookeeper是客户端入口主类,负责建立与server的会话 它提供以下几类主要方法  : 功能 描述 create 在本地目录树中创建一个节点 delete 删除一个节点 exists 测试本地是否存在目标节点 get/set data 从目标节点上读取 / 写数据 get/set ACL 获
1602 0
LINUX访问WINDOWS网络共享目录
LINUX访问WINDOWS网络共享目录
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
可预期数据中心网络
立即下载
可编程网络视角的网络创新研究
立即下载
思科软件定义访问:实现基于业务意图的园区网络
立即下载