了解NetworkCallback
官网文档:https://developer.android.com/reference/android/net/ConnectivityManager.NetworkCallback?hl=en
下面是回调方法,通过复写相关方法,达到监听的目的
方法 | 介绍 |
onAvailable(Network network) | 网络连接成功,通知可以使用的时候调用 |
onBlockedStatusChanged(Network network, boolean blocked) | 当访问指定的网络被阻止或解除阻塞时调用 |
onCapabilitiesChanged(Network network, NetworkCapabilities networkCapabilities) | 当网络状态修改但仍旧是可用状态时调用 |
onLinkPropertiesChanged(Network network, LinkProperties linkProperties) | 当网络连接的属性被修改时调用 |
onLosing(Network network, int maxMsToLive) | 当网络正在断开连接时调用 |
onLost(Network network) | 当网络已断开连接时调用 |
onUnavailable() | 当网络连接超时或网络请求达不到可用要求时调用 |
显而易见的是,我们一般只需要监听onAvailable、onLost、onCapabilitiesChanged就能达到监听网络状态的效果。