android页面变化监听,GitHub - kongqw/NetworkMonitor: Android 全局网络变化监听

AndroidNetworkMonitor

68747470733a2f2f6a69747061636b2e696f2f762f6b6f6e6771772f4e6574776f726b4d6f6e69746f722e737667

Android 全局网络变化监听

How to

To get a Git project into your build:

Step 1. Add the JitPack repository to your build file

Add it in your root build.gradle at the end of repositories:

allprojects {

repositories {

...

maven { url 'https://jitpack.io' }

}

}

Step 2. Add the dependency

dependencies {

implementation 'com.github.kongqw:NetworkMonitor:1.1.0'

}

使用

初始化

在Application中初始化

NetworkMonitorManager.getInstance().init(this)

/**

* 初始化

* @param application 上下文

* @param jitterTime 设置抖动时间(即多久之后网络状态没有发生变化,才回调网络状态,单位:毫秒,默认1500毫秒)

*/

NetworkMonitorManager.getInstance().init(this, 1_500)

注册与反注册

在需要监听网络状态的页面进行注册与反注册

NetworkMonitorManager.getInstance().register(this)

NetworkMonitorManager.getInstance().unregister(this)

监听网络状态变化

@NetworkMonitor

fun onNetWorkStateChange(networkState: NetworkState) {

when (networkState) {

NetworkState.NONE -> {

// TODO 暂无网络

}

NetworkState.WIFI -> {

// TODO WIFI网络

}

NetworkState.CELLULAR -> {

// TODO 蜂窝网络

}

}

}

也可以监听指定网络状态,例如

@NetworkMonitor(monitorFilter = [NetworkState.NONE])

fun onNetWorkStateChangeNONE(networkState: NetworkState) {

// TODO 网络断开时回调

}

@NetworkMonitor(monitorFilter = [NetworkState.WIFI])

fun onNetWorkStateChange1(networkState: NetworkState) {

// TODO WIFI连接上的时候回调

}

@NetworkMonitor(monitorFilter = [NetworkState.WIFI, NetworkState.CELLULAR])

fun onNetWorkStateChange2(networkState: NetworkState) {

// TODO 连接上WIFI或蜂窝网络的时候回调

}

判断当前是否有网络连接

val hasNetworkCapability: Boolean = NetworkStateUtils.hasNetworkCapability(applicationContext)

获取当前的网络状态

val networkState: NetworkState = NetworkStateUtils.getNetworkState(applicationContext)

混淆

-keepattributes *Annotation*

-keepclassmembers class * {

@com.kongqw.network.monitor.interfaces.NetworkMonitor ;

}

-keep class com.kongqw.network.monitor.** { *; }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值