开发者社区> 啊啊啊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 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简介(二)
【Android 应用开发】Android 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简介(二)
0 0
【Android 应用开发】Android 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简介(一)
【Android 应用开发】Android 网络编程 API笔记 - java.net 包 权限 地址 套接字 相关类 简介(一)
0 0
【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api
【Android 应用开发】Android 网络编程 API笔记 - java.net 包相关 接口 api
0 0
Android App开发超实用实例 | ​Broadcast
介绍Broadcast的静态注册、动态注册及有序广播。 Broadcast(广播)分为发送者和接收者,可实现跨应用的消息传递。重启手机、闹钟、来电、接收短信等都会发出广播,通过BroadcastReceiver就可以接收广播并进行相应处理。
0 0
Android程序猿从零开发小程序项目(二)
Android程序猿从零开发小程序项目(二)
0 0
Android程序猿从零开发小程序项目(一)
Android程序猿从零开发小程序项目(一)
0 0
Android 蓝牙BLE开发从官方源码demo开始(二)
Android 蓝牙BLE开发从官方源码demo开始(二)
0 0
Android 蓝牙BLE开发从官方源码demo开始(一)
Android 蓝牙BLE开发从官方源码demo开始(一)
0 0
Android开发:获取安卓App版本号的方法步骤
在Android开发过程中,想要开发一个完整功能的App,各个地方的内容都要涉及到,比如获取App的系统版本号就是必须要有的功能。Android的App版本号相关内容比iOS的App版本号内容要多,而且iOS版的App版本信息跟Android的还不一样。本篇文章就来介绍一下Android开发中获取App版本号的方法步骤,方便以后使用。获取App版本号常用的有两个方法,这两种方式都能获取到系统版本号,请根据实际需求或者偏好来选择任何一种方法即可。
0 0
Android开发:往项目工程里面新引入工具包的步骤
在Android开发过程中,有些时候会根据实际需要,要往项目里面引入工具包,作为初级开发者或者刚开始入门的Android开发者来说会不太熟练怎么引入,所以往项目工程里面新引入工具包也是必备技能。那么本篇博文就来分享一下给项目工程里面引入工具包的步骤,只分享给有需要的人。
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
手机卫士性能优化方案-Android篇
立即下载
Android内存泄漏自动化链路分析组件Probe
立即下载
移动无线之测试到质量的转变
立即下载