react-native - Expo.js:当我的应用程序进入后台时捕获事件?
问题描述
如果我正在使用我的应用程序,然后使用主页按钮、应用程序切换器等退出它,是否有办法在检测到此事件时可靠地运行某些代码?我想做一些任务,比如取消定时器、安排通知等等。
解决方案
AppState
您可以使用“react-native”提供的跟踪应用程序的状态
通过使用AppState.currentState
,您将知道应用程序是处于前台、后台、活动还是非活动状态。如果您想在状态更改时执行某些任务,您可以使用AppState
.
您可以在组件中添加以下逻辑来完成它 -
componentDidMount() {
AppState.addEventListener('change', this.handleStateChange);
}
componentWillUnmount() {
AppState.removeEventListener('change', this.handleStateChange);
}
handleStateChange
每次应用程序从前台移动到后台时都会调用,反之亦然,应用程序的当前状态作为参数传递。
如需进一步参考,请参阅文档
希望它有所帮助。
推荐阅读
- python - 当两个条件都满足时,如何让 Discord Bot 做出响应?
- python - Python:从带有分隔符“\”的表中选择列
- bash - 如何使用 bash 参数替换来删除“./”?
- amazon-web-services - 从 API 网关触发的 lambda 函数的最大预配置并发应该是多少?
- python - 如何将过滤器从下拉列表传递到 django-import-export 视图
- python - 一个命令行参数的“类型”可以依赖于另一个参数的值吗?
- php - 嗨,请问如何仅将子菜单显示到侧边栏,这是代码,但都出现在显示中
- php - 只能读取文件 php 的第一行
- typescript - 将数组转换为日期 yyyy-mm-dd
- eclipse - Eclipse 没有头部问题