From 7941ff44fc3159ac2427fdfe65cf0536889883a7 Mon Sep 17 00:00:00 2001 From: "AVAEON\\jcassidy" Date: Thu, 19 May 2022 16:33:22 +0100 Subject: [PATCH 1/2] fix(android) Connectivity reporting none on resume --- packages/core/connectivity/index.android.ts | 24 +++++++++++---------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/packages/core/connectivity/index.android.ts b/packages/core/connectivity/index.android.ts index b9e7ea5447..4395962bb3 100644 --- a/packages/core/connectivity/index.android.ts +++ b/packages/core/connectivity/index.android.ts @@ -32,8 +32,12 @@ function getActiveNetworkInfo(): android.net.NetworkInfo { function getNetworkCapabilities() { // @ts-ignore const connectivityManager: any = getConnectivityManager(); - const network = connectivityManager.getActiveNetwork(); - const capabilities = connectivityManager.getNetworkCapabilities(network); + const networkToCheck = connectivityManager.getActiveNetwork(); + const capabilities = connectivityManager.getNetworkCapabilities(networkToCheck); + return parseNetworkCapabilities(capabilities); +} + +function parseNetworkCapabilities(capabilities?: android.net.NetworkCapabilities) { if (capabilities == null) { return connectionType.none; } @@ -116,8 +120,11 @@ export function startMonitoring(connectionTypeChangedCallback: (newConnectionTyp if (android.os.Build.VERSION.SDK_INT >= 28) { const manager = getConnectivityManager(); if (manager) { - notifyCallback = () => { - const newConnectionType = getConnectionType(); + notifyCallback = (network: android.net.Network, networkCapabilities: android.net.NetworkCapabilities) => { + let newConnectionType = connectionType.none; + if (network && networkCapabilities) { + newConnectionType = parseNetworkCapabilities(networkCapabilities); + } const zoneCallback = zonedCallback(connectionTypeChangedCallback); zoneCallback(newConnectionType); }; @@ -125,15 +132,10 @@ export function startMonitoring(connectionTypeChangedCallback: (newConnectionTyp if (!networkCallback) { @NativeClass class NetworkCallbackImpl extends ConnectivityManager.NetworkCallback { - onAvailable(network: android.net.Network) { - if (notifyCallback) { - notifyCallback(); - } - } - onCapabilitiesChanged(network: android.net.Network, networkCapabilities: android.net.NetworkCapabilities) { + console.log('NetworkCallbackImpl.onCapabilitiesChanged'); if (notifyCallback) { - notifyCallback(); + notifyCallback(network, networkCapabilities); } } From a063847dc03e011c0547d27cfcc74b7c627db855 Mon Sep 17 00:00:00 2001 From: Jason Cassidy Date: Thu, 19 May 2022 19:25:34 +0100 Subject: [PATCH 2/2] remove console.log --- packages/core/connectivity/index.android.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/core/connectivity/index.android.ts b/packages/core/connectivity/index.android.ts index 4395962bb3..eabcbb1d16 100644 --- a/packages/core/connectivity/index.android.ts +++ b/packages/core/connectivity/index.android.ts @@ -133,7 +133,6 @@ export function startMonitoring(connectionTypeChangedCallback: (newConnectionTyp @NativeClass class NetworkCallbackImpl extends ConnectivityManager.NetworkCallback { onCapabilitiesChanged(network: android.net.Network, networkCapabilities: android.net.NetworkCapabilities) { - console.log('NetworkCallbackImpl.onCapabilitiesChanged'); if (notifyCallback) { notifyCallback(network, networkCapabilities); }