API兼容性:
QRN:v3.19.0
Android:60001293
QAppState
提供 App 级别的状态监听,可以通过他来监听应用的前后台状态(Rn 中的 AppState 在 Adr 中仅能监听页面生命周期级别的切入切出)。
使用方法与 AppState 一致 (IOS 直接使用 AppState 即可)
注意,页面跳转后如非必要,请手动注销监听,否则监听会一直回调(页面跳转并不会执行 componentWillUnmount
)
import { QAppState } from 'qunar-react-native';
添加一个监听函数,用于监听应用状态的变化。type 参数应填change。
移除一个监听函数。type 参数应填change。
获取当前的前后台状态
import { QAppState } from 'qunar-react-native';
class QAppStateExample extends Component {
state = {
appState: QAppState.currentState
}
componentDidMount() {
QAppState.addEventListener('change', this._handleAppStateChange);
}
componentWillUnmount() {
QAppState.removeEventListener('change', this._handleAppStateChange);
}
_handleAppStateChange = (nextAppState) => {
if (this.state.appState.match(/inactive|background/) && nextAppState === 'active') {
console.log('App has come to the foreground!')
}
this.setState({appState: nextAppState});
}
render() {
return (
<Text>Current state is: {this.state.appState}</Text>
);
}
}