From d013afbf50757d3b634f3cf440213fb1d9d83c63 Mon Sep 17 00:00:00 2001 From: Arty Bishop Date: Mon, 15 Mar 2021 18:10:05 +0000 Subject: [PATCH] Added isNetworkAvailable extension function --- app/src/main/AndroidManifest.xml | 1 + .../rtbishop/look4sat/utility/Extensions.kt | 28 +++++++++++++++++++ 2 files changed, 29 insertions(+) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d0c562cb..88b972cc 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -3,6 +3,7 @@ package="com.rtbishop.look4sat"> + = callbackFlow { + val callback = object : ConnectivityManager.NetworkCallback() { + override fun onAvailable(network: Network) { + offer(true) + } + + override fun onLost(network: Network) { + offer(false) + } + } + val manager = getSystemService(Context.CONNECTIVITY_SERVICE) as ConnectivityManager + manager.registerNetworkCallback(NetworkRequest.Builder().run { + addCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET) + build() + }, callback) + awaitClose { manager.unregisterNetworkCallback(callback) } +}