A react native library for checking battery optimization and whitelisting in Android
npm install react-native-disable-battery-optimizations-android$ npm install react-native-disable-battery-optimizations-android --save
For manual linking :$ react-native link react-native-disable-battery-optimizations-android
#### Android
1. Open up android/app/src/main/java/[...]/MainActivity.java
- Add import com.reactlibrary.RNDisableBatteryOptimizationsandroidPackage; to the imports at the top of the file
- Add new RNDisableBatteryOptimizationsPackage() to the list returned by the getPackages() method
2. Append the following lines to android/settings.gradle:
```
include ':react-native-disable-battery-optimizations-android'
project(':react-native-disable-battery-optimizations-android').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-disable-battery-optimizations-android/android')
android/app/build.gradle
3. Insert the following lines inside the dependencies block in :`
`
compile project(':react-native-disable-battery-optimizations-android')
javascript
import RNDisableBatteryOptimizationsAndroid from 'react-native-disable-battery-optimizations-android';RNDisableBatteryOptimizationsAndroid.isBatteryOptimizationEnabled().then((isEnabled)=>{
if(isEnabled){
RNDisableBatteryOptimizationsAndroid.openBatteryModal();
}
});
// for direct whitelisting app with Instant Dialogue
//The user will be taken to a screen where they can indicate that they are willing to suspend portions of Doze mode effects on your app.
Note: Play store will not allow using this method, and will allow only as an exception
RNDisableBatteryOptimizationsAndroid.enableBackgroundServicesDialogue();
Also
Add this permission in your AndroidManifest.xml
``