A cross-platform bridge that allows you to enable and disable the screen idle timer in your React Native app
npm install react-native-idle-timer@latest --save
rnpm link react-native-idle-timer
- In the XCode's "Project navigator", right click on your project's Libraries folder ➜
Add Files to <...>
- Go to
node_modules
➜react-native-idle-timer
➜ios
➜ selectRNIdleTimer.xcodeproj
- Add
libRNIdleTimer.a
toBuild Phases -> Link Binary With Libraries
-
in
android/settings.gradle
... include ':react-native-idle-timer' project(':react-native-idle-timer').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-idle-timer/android')
-
in
android/app/build.gradle
add:dependencies { ... compile project(':react-native-idle-timer') }
-
and finally, in
android/src/main/java/com/{YOUR_APP_NAME}/MainActivity.java
add://... import com.marcshilling.idletimer.IdleTimerPackage; // <--- This! //... @Override protected List<ReactPackage> getPackages() { return Arrays.<ReactPackage>asList( new MainReactPackage(), new IdleTimerPackage() // <---- and This! );
}
## Usage
1. In your React Native javascript code, bring in the native module:
```javascript
import IdleTimerManager from 'react-native-idle-timer';
- To disable the idle timer on a specific view component:
componentWillMount() {
IdleTimerManager.setIdleTimerDisabled(true);
}
componentWillUnmount() {
IdleTimerManager.setIdleTimerDisabled(false);
}