react-native-activity-android
Version:
Provides a method to pause Android app (Activity.moveTaskToBack), as well as lifecycle hooks when app is paused and resumed.
33 lines (28 loc) • 842 B
JavaScript
module.exports = (React) => {
const DeviceEventEmitter = React.DeviceEventEmitter;
const _eventHandlers = {
activityResume: new Set(),
activityPause: new Set()
};
DeviceEventEmitter.addListener(
'activityResume', () => {
_eventHandlers.activityResume.forEach(fn => fn());
}
);
DeviceEventEmitter.addListener(
'activityPause', () => {
_eventHandlers.activityPause.forEach(fn => fn());
}
);
return {
moveTaskToBack(onSuccess = () => {}, onError = () => {}) {
return React.NativeModules.ActivityAndroid.moveTaskToBack(onSuccess, onError);
},
addEventListener(type, handler) {
_eventHandlers[type] && _eventHandlers[type].add(handler);
},
removeEventListener(type, handler) {
_eventHandlers[type] && _eventHandlers[type].delete(handler);
}
};
};