当前位置: 首页 > 知识库问答 >
问题:

wifi或3G网络状态改变时的BroadcastReceiver

卫甫
2023-03-14

我有一个应用程序,每当手机连接到WiFi时都会更新数据库。我已经实现了服务BroadcastReceiver,它们将运行服务(它将告诉我正在使用的网络),但问题是我不知道在清单文件中添加什么以在网络状态更改或连接到某种网络时启动BroadcastReceiver

共有1个答案

赵俊晤
2023-03-14

你需要

<intent-filter>
<action android:name="android.net.wifi.WIFI_STATE_CHANGED"/>
<action android:name="android.net.wifi.STATE_CHANGE"/>
</intent-filter>

接收器标记中。

或者,如果您希望对它有更多的控制,请在注册BroadcastReceiver之前设置以下内容:

final IntentFilter filters = new IntentFilter();
filters.addAction("android.net.wifi.WIFI_STATE_CHANGED");
filters.addAction("android.net.wifi.STATE_CHANGE");
super.registerReceiver(yourReceiver, filters);
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

要检查连接性,可以使用ConnectivityManager,因为它会告诉您可用的连接类型。

ConnectivityManager conMngr = (ConnectivityManager)this.getSystemService(this.CONNECTIVITY_SERVICE);
android.net.NetworkInfo wifi = conMngr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
android.net.NetworkInfo mobile = conMngr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
 类似资料:
  • 本文向大家介绍iOS实时监控网络状态的改变,包括了iOS实时监控网络状态的改变的使用技巧和注意事项,需要的朋友参考一下 在网络应用中,有的时候需要对用户设备的网络状态进行实时监控,有两个目的:  (1)让用户了解自己的网络状态,防止一些误会(比如怪应用无能)  (2)根据用户的网络状态进行智能处理,节省用户流量,提高用户体验    WIFI网络:自动下载高清图片    4G/3G网络:只下载缩略图

  • 本文向大家介绍Android判断网络类型的方法(2g,3g还是wifi),包括了Android判断网络类型的方法(2g,3g还是wifi)的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android判断网络类型的方法。分享给大家供大家参考,具体如下: 判断网络类型是wifi,还是3G,还是2G网络,对不同的网络进行不同的处理,现将判断方法整理给大家,以供参考 说明:下面用到的数据移动2G

  • jd.getNetworkType(OBJECT) 获取网络类型。 OBJECT 参数说明: 参数 类型 必填 说明 success Function 是 接口调用成功的回调 fail Function 否 接口调用失败的回调函数 complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行) success 回调参数说明: 参数 说明 networkType 网络类型

  • 我需要解决这个问题。请帮我指导一下。

  • 本文向大家介绍Android编程监听网络连接状态改变的方法,包括了Android编程监听网络连接状态改变的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Android编程监听网络连接状态改变的方法。分享给大家供大家参考,具体如下: BroadcastReceiver 在清单文件中注册 BroadcastReceiver 要读取网络状态记得要加权限 更多关于Android相关内容感兴趣

  • 本文向大家介绍Android 实时监测(监听)网络连接状态变化,包括了Android 实时监测(监听)网络连接状态变化的使用技巧和注意事项,需要的朋友参考一下 看了网上的很多,都不是自己想要的。所以自己就参考着写了一个。 实现这个的方法很多,我是想的这种,如果哪有不足,有bug的地方希望大家指出,共同进步。。。。 先简单说一下思路:网络变化时系统会发出广播。所以我们监听这个广播,利用接口回调通知a