FormidableLabs / FormidableLabs/react-native-app-auth
App freezes when calling prefetchConfiguration with no internet connection
- Dominant language
- Java
- Stars
- 2.3k
- Forks
- 473
- PR merge metrics
- No merged PRs in 30d
Description
## Issue
When calling prefetchConfiguration with device in airplane mode or with no internet connection the app freezes.
This is the error I get: E/AppAuth: Network error when retrieving discovery document.
config.js file
```js
import { prefetchConfiguration } from 'react-native-app-auth';
const config = {
warmAndPrefetchChrome: true,
issuer: 'https://login.microsoftonline.com/1caa43b8-bf09-48b6-9b3c-bd5a56fec019',
clientId: '5e0b7c9c-aaaa-472a-8ec6-6362c6d56fbe',
redirectUrl: 'msauth.com.rccl.oauth://auth/',
additionalParameters: {},
scopes: ['openid', 'profile', 'email', 'offline_access'],
};
prefetchConfiguration(config);
export default config;
```
Also tried using try/catch, still the app freezes.
```js
try{
prefetchConfiguration(config);
}catch (error) {
console.log(error);
}
```
## Environment
RN: 0.59.4
react-native-app-auth: ^4.4.0
* **Your Identity Provider**: Azure
* **Platform that you're experiencing the issue on**: both
* **Are you using Expo?** No
Contributor guide
Research direction
Start with the prefetchConfiguration call shown in config.js and reproduce it on both platforms with the device offline. Trace how the network error is handled, then verify that the app no longer freezes and that the failure is observable to the caller.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react-native
- Domain
- authentication, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100