当应用程序被用户终止时,我想更改 API 的状态数据。
我尝试过使用 componentWillUnmount 在应用程序关闭时更改数据,我还使用 AppState
_handleAppStateChange = (nextAppState) => {
if (
this.state.appState.match(/inactive|background/) &&
nextAppState === 'active'
) {
console.log('App has come to the foreground!')
}
this.setState({ appState: nextAppState })
}
我希望当应用程序被用户杀死时,它可以自动更改状态。
nextAppState === 'inactive'
或检查是否background
不会告诉您应用程序是否被“杀死”(刷出)。
因为当本机层被终止时,JavaScript 引擎也会被终止。所以没有办法告诉 javascript 该应用程序已被终止。
如果您只想在应用程序被终止后初始化某些内容,您可以在内部触发一些函数constructor
or componentDidMount
您知道它只会为您的应用程序安装一次的基本组件。
补充:现在我们可以(也许更愿意)使用useEffect(()=>{}, [])
而不是上面的例子。
如果你真的想确保应用程序之前被杀死,也许你可以存储nextAppState
进入某个持久存储并检查该值是否与非活动或后台之一匹配,因为应用程序状态在应用程序首次启动时不会更改。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)