FormidableLabs / FormidableLabs/react-native-app-auth

App freezes when calling prefetchConfiguration with no internet connection

Abierto
#401 4 comentarios 3 reacciones 0 asignados Ver en GitHub
bug issue-accepted
Lenguaje dominante
Java
Estrellas
2.3k
Forks
473
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

## 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

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza con la llamada a prefetchConfiguration mostrada en config.js y reprodúcela en ambas plataformas con el dispositivo sin conexión. Rastrea cómo se gestiona el error de red y verifica después que la aplicación ya no se bloquea y que el fallo es observable para quien realiza la llamada.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, react-native
Área
authentication, mobile
Tipo de issue
Error
Dificultad
4/5
Tiempo estimado
3-5 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.