From ffef7e2bcf4a8718cf9ce008a7714fa7bf646c6b Mon Sep 17 00:00:00 2001 From: Elias Nahum Date: Mon, 11 Feb 2019 15:22:31 -0300 Subject: [PATCH] MM-13337 Fix EMM connections using VPN on-demand (#2558) * Fix EMM connections using VPN on-demand * Update package.json * Update package-lock.json --- app/fetch_preconfig.js | 10 +++++++++- app/screens/select_server/select_server.js | 1 + app/utils/network.js | 1 + package-lock.json | 4 ++-- package.json | 2 +- 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/app/fetch_preconfig.js b/app/fetch_preconfig.js index 5ca2f0fc1a..7e4860c249 100644 --- a/app/fetch_preconfig.js +++ b/app/fetch_preconfig.js @@ -38,7 +38,15 @@ Client4.doFetchWithResponse = async (url, options) => { } const customHeaders = LocalConfig.CustomRequestHeaders; - let requestOptions = Client4.getOptions(options); + let waitsForConnectivity = false; + if (url.includes('/api/v4/system/ping')) { + waitsForConnectivity = true; + } + let requestOptions = { + ...Client4.getOptions(options), + waitsForConnectivity, + }; + if (customHeaders && Object.keys(customHeaders).length > 0) { requestOptions = { ...requestOptions, diff --git a/app/screens/select_server/select_server.js b/app/screens/select_server/select_server.js index 3a29af6895..a357948335 100644 --- a/app/screens/select_server/select_server.js +++ b/app/screens/select_server/select_server.js @@ -335,6 +335,7 @@ export default class SelectServer extends PureComponent { }); Client4.setUrl(url); + Client4.online = true; handleServerUrlChanged(url); let cancel = false; diff --git a/app/utils/network.js b/app/utils/network.js index dfe1d45e07..4a6cac21fa 100644 --- a/app/utils/network.js +++ b/app/utils/network.js @@ -26,6 +26,7 @@ export async function checkConnection(isConnected) { const config = { timeout: PING_TIMEOUT, auto: true, + waitsForConnectivity: true, }; if (Platform.OS === 'ios' && certificate === '') { diff --git a/package-lock.json b/package-lock.json index a535c6cbeb..3157367fba 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12353,8 +12353,8 @@ } }, "rn-fetch-blob": { - "version": "github:enahum/react-native-fetch-blob#20d1c07ef34ba18be485a1f56cd2261158e93f69", - "from": "github:enahum/react-native-fetch-blob#20d1c07ef34ba18be485a1f56cd2261158e93f69", + "version": "github:enahum/react-native-fetch-blob#1f370ab3616101d4ffe919e0b58cbe4ef319ce5d", + "from": "github:enahum/react-native-fetch-blob#1f370ab3616101d4ffe919e0b58cbe4ef319ce5d", "requires": { "base-64": "0.1.0", "glob": "7.0.6" diff --git a/package.json b/package.json index 22ecdada02..1b31f015d9 100644 --- a/package.json +++ b/package.json @@ -65,7 +65,7 @@ "redux-persist-transform-filter": "0.0.18", "redux-thunk": "2.3.0", "reselect": "4.0.0", - "rn-fetch-blob": "github:enahum/react-native-fetch-blob#20d1c07ef34ba18be485a1f56cd2261158e93f69", + "rn-fetch-blob": "github:enahum/react-native-fetch-blob#1f370ab3616101d4ffe919e0b58cbe4ef319ce5d", "rn-placeholder": "github:enahum/rn-placeholder#bfee66eb54f1f06d1425a0ad511a5e16559bf82c", "semver": "5.6.0", "shallow-equals": "1.0.0",