当我退出应用程序并重新打开它时,我的 React Native android 应用程序不会从根组件启动
My react native android application does not start from root component when I exit app and I reopen it
我正在使用 React Native Navigation Wix V2。启动画面是我的根组件。我的主页数据已从服务器的启动画面中获取,如果成功完成,它会自动导航到我的主页。我在主屏幕中退出应用程序如下:
componentDidAppear() {
handleAndroidBackButton(exitAlert);
}
componentDidDisappear() {
removeAndroidBackButtonHandler();
}
exitAlert 函数是:
const exitAlert = () => {
Alert.alert(
'',
'Do you want to Exit?',
[
{text: 'Ask later', onPress: () => console.log('Ask me later pressed')},
{
text: 'No',
onPress: () => console.log('Cancel Pressed'),
style: 'cancel',
},
{text: 'Yes', onPress: () => BackHandler.exitApp()},
],
{cancelable: false},
)
};
问题是当我使用 phone 后退按钮退出应用程序时我的应用程序进入后台(这是正确的)但是当我再次打开它时它不是从我的根组件开始它显示我的主屏幕.因此,如果服务器端发生一些变化,我的初始屏幕中的网络服务不会再次调用,我也看不到我的应用程序中的更新。
我发现我错了,我添加了android:launchMode="singleTop"这行代码到清单的 activity 标签。我删除了它,现在我的应用程序可以正常工作了。
我正在使用 React Native Navigation Wix V2。启动画面是我的根组件。我的主页数据已从服务器的启动画面中获取,如果成功完成,它会自动导航到我的主页。我在主屏幕中退出应用程序如下:
componentDidAppear() {
handleAndroidBackButton(exitAlert);
}
componentDidDisappear() {
removeAndroidBackButtonHandler();
}
exitAlert 函数是:
const exitAlert = () => {
Alert.alert(
'',
'Do you want to Exit?',
[
{text: 'Ask later', onPress: () => console.log('Ask me later pressed')},
{
text: 'No',
onPress: () => console.log('Cancel Pressed'),
style: 'cancel',
},
{text: 'Yes', onPress: () => BackHandler.exitApp()},
],
{cancelable: false},
)
};
问题是当我使用 phone 后退按钮退出应用程序时我的应用程序进入后台(这是正确的)但是当我再次打开它时它不是从我的根组件开始它显示我的主屏幕.因此,如果服务器端发生一些变化,我的初始屏幕中的网络服务不会再次调用,我也看不到我的应用程序中的更新。
我发现我错了,我添加了android:launchMode="singleTop"这行代码到清单的 activity 标签。我删除了它,现在我的应用程序可以正常工作了。