如果我的 React Native 应用程序无法连接到其后端,我会显示一个带有 OK 按钮的警报。如果发生这种情况,应用程序继续运行没有意义,因此我想在单击按钮时将其关闭。我该怎么做呢?
我怀疑密钥在 AppRegistry 中,但文档有点少。
如果我的 React Native 应用程序无法连接到其后端,我会显示一个带有 OK 按钮的警报。如果发生这种情况,应用程序继续运行没有意义,因此我想在单击按钮时将其关闭。我该怎么做呢?
我怀疑密钥在 AppRegistry 中,但文档有点少。
对于 Android,使用BackHandler退出应用程序:
import React, { BackHandler } from 'react-native';
BackHandler.exitApp();
我回答这个问题太晚了,但我认为我选择的方式可能会帮助某人,所以我回答这个问题。
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;
}
今天没有react-native的特定方法来做到这一点。您必须从事物的本机方面完成此操作。
此外,您是否正在为 iOS 开发?Apple 已表示应用程序不应自行关闭。
编写一个原生module,在调用时执行以下操作:
IOS:
exit(9);
安卓:
((YourApplication) self.getApplicationContext()).kill();
...编辑...
或者直接使用我创建的:https : //www.npmjs.com/package/react-native-exit-app
这就是我实现它的方式:
componentWillMount() {
BackHandler.addEventListener('hardwareBackPress', this.handleBackButtonClick);
}
componentWillUnmount() {
BackHandler.removeEventListener('hardwareBackPress', this.handleBackButtonClick);
}
handleBackButtonClick() {
BackHandler.exitApp();
return true;
}