mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-02-07 22:42:13 +08:00
- [ReactNative] Remove pushNotification prop from renderApplication | Eric Vicenti - [react_native] Stub VibrationIOS on Android | Andy Street - [ReactNative] Simplify and test interpolators | Christopher Chedeau - [ReactNative] Increase timeout for obj-c tests | Christopher Chedeau - [ReactNative] Updated RKText to new UIManager system | Nick Lockwood - [ReactNative] Unforked RCTShadowView, moved RKTextView into FBReactKitTextModule | Nick Lockwood - [ReactKit] Remove NativeModulesDeprecated | Spencer Ahrens - [ReactNative] Allow single callbacks in NativeModules | Spencer Ahrens - [ReactNative] s/RK/RCT in OSS | Spencer Ahrens - [ReactNative] Cleanup StyleSheet API | Christopher Chedeau - [RCTVibration] Basic Vibration API | Christopher Chedeau - [React Native] Prevent crash in redbox code with two thrown errors | Ben Alpert - [ReactNative] unbreak Android | Andrew Rasmussen
56 lines
1.1 KiB
JavaScript
56 lines
1.1 KiB
JavaScript
/**
|
|
* Copyright 2004-present Facebook. All Rights Reserved.
|
|
*
|
|
* @providesModule AppStateIOS
|
|
*/
|
|
'use strict';
|
|
|
|
var NativeModules = require('NativeModules');
|
|
var RCTDeviceEventEmitter = require('RCTDeviceEventEmitter');
|
|
var RCTAppState = NativeModules.RCTAppState;
|
|
|
|
var logError = require('logError');
|
|
|
|
var DEVICE_APPSTATE_EVENT = 'appStateDidChange';
|
|
|
|
var _appStateHandlers = {};
|
|
|
|
class AppStateIOS {
|
|
|
|
static addEventListener(type, handler) {
|
|
_appStateHandlers[handler] = RCTDeviceEventEmitter.addListener(
|
|
DEVICE_APPSTATE_EVENT,
|
|
(appStateData) => {
|
|
handler(appStateData.app_state);
|
|
}
|
|
);
|
|
}
|
|
|
|
static removeEventListener(type, handler) {
|
|
if (!_appStateHandlers[handler]) {
|
|
return;
|
|
}
|
|
_appStateHandlers[handler].remove();
|
|
_appStateHandlers[handler] = null;
|
|
}
|
|
|
|
}
|
|
|
|
AppStateIOS.currentState = null;
|
|
|
|
RCTDeviceEventEmitter.addListener(
|
|
DEVICE_APPSTATE_EVENT,
|
|
(appStateData) => {
|
|
AppStateIOS.currentState = appStateData.app_state;
|
|
}
|
|
);
|
|
|
|
RCTAppState.getCurrentAppState(
|
|
(appStateData) => {
|
|
AppStateIOS.currentState = appStateData.app_state;
|
|
},
|
|
logError
|
|
);
|
|
|
|
module.exports = AppStateIOS;
|