用React Native做一个填字游戏(4)——监听程序状态

当我们的程序在前后台直接做切换时,有时需要一些必要的动作,如暂停背景音乐、保存用户输入等。在Android上,我们使用的是onPause和onResume,RN提供AppState来监听APP的状态,简略使用方法如下,具体的API文档参见AppState

import {
  AppState,
} from 'react-native';

  _handleAppStateChange(nextAppState) {
    const { appState, backgroundMusic } = this.state;
    if (appState.match(/inactive|background/) && nextAppState === 'active') {
      if (backgroundMusic) {
        backgroundMusic.play();
      } else {
        this._playBackgroundMusic();
      }
    } else if (appState === 'active' && nextAppState.match(/inactive|background/)) {
      if (backgroundMusic) {
        backgroundMusic.pause();
      }
    }
    this.setState({appState: nextAppState});
  }

  componentDidMount() {
    AppState.addEventListener('change', this._handleAppStateChange);
  }

  componentWillUnmount() {
    AppState.removeEventListener('change', this._handleAppStateChange);
  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容