Comment puis-je sortir/arrêter une application Native React?
si mon application native React ne se connecte pas à son backend, j'affiche une alerte avec un bouton OK. Si cela arrive, il n'y a aucun intérêt à ce que l'application continue à fonctionner, alors j'aimerais l'éteindre quand le bouton est cliqué. Comment dois-je faire?
je soupçonne que la clé est dans le Registre, mais les documents sont un peu rares.
5 réponses
il n'y a pas de façon spécifique de réagir pour faire cela aujourd'hui. Vous devez accomplir cela du côté indigène des choses.
plus loin, vous développez pour iOS? Apple a déclaré que les applications ne devraient pas se fermer.
Pour Android, Utilisez BackAndroid pour quitter l'Application:
import React, {
BackAndroid,
} from 'react-native';
BackAndroid.exitApp();
je réponds à la question trop tard, mais j'ai pensé que la façon dont j'ai choisi pourrait aider quelqu'un, donc je réponds à cette question.
componentWillMount() {
BackHandler.addEventListener('hardwareBackPress', this.backPressed);
}
componentWillUnmount() {
BackHandler.removeEventListener('hardwareBackPress', this.backPressed);
}
backPressed = () => {
Alert.alert(
'Exit App',
'Do you want to exit?',
[
{text: 'No', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
{text: 'Yes', onPress: () => BackHandler.exitApp()},
],
{ cancelable: false });
return true;
}
Écrire un module natif qui effectue les actions suivantes lorsqu'il est appelé à:
IOS:
exit(9);
ANDROID:
((YourApplication) self.getApplicationContext()).kill();
...MODIFIER...
Ou tout simplement utiliser l'un que j'ai créé: https://www.npmjs.com/package/react-native-exit-app
Voici comment j'ai réussi:
componentWillMount() {
BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick);
}
componentWillUnmount() {
BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick);
}
handleBackButtonClick() {
BackHandler.exitApp();
return true;
}