FormidableLabs / FormidableLabs/react-native-app-auth

App freezes when calling prefetchConfiguration with no internet connection

Open
#401 4 comments 3 reactions 0 assignees View on GitHub
bug issue-accepted
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.