optimize_battery_fixed 1.0.0 copy "optimize_battery_fixed: ^1.0.0" to clipboard
optimize_battery_fixed: ^1.0.0 copied to clipboard

PlatformAndroid

Check for battery optimization status and open settings or disable it - Fixed and optimized version

Optimize Battery Fixed #

A Flutter plugin for checking and managing battery optimization settings on Android devices. This is a fixed and optimized version of the original optimize_battery package, maintained for production use with enhanced stability and documentation.

📦 Installation #

dependencies:
  optimize_battery_fixed: ^1.0.0

From GitHub #

dependencies:
  optimize_battery_fixed:
    git:
      url: https://github.com/boughdiri-dorsaf/optimize_battery_fixed.git
      ref: main

From Local Path #

dependencies:
  optimize_battery_fixed:
    path: ./optimize_battery_fixed

🚀 Features #

  • Battery Optimization Check: Check if app is ignoring battery optimization
  • Settings Navigation: Open battery optimization settings
  • Disable Dialog: Show battery optimization disable dialog
  • Null Safety: Full null safety support
  • Android V2 Embedding: Modern Android embedding support

📱 Platform Support #

Android #

  • Battery optimization status checking
  • Settings navigation
  • Disable optimization dialog
  • Permission handling

iOS #

  • Not supported (battery optimization is iOS system feature)

🔧 Usage #

Check Battery Optimization Status #

import 'package:optimize_battery_fixed/optimize_battery_fixed.dart';

// Check if app is ignoring battery optimization
OptimizeBattery.isIgnoringBatteryOptimizations().then((onValue) {
  setState(() {
    if (onValue) {
      // App is ignoring battery optimization
      print('App is ignoring battery optimization');
    } else {
      // App is under battery optimization
      print('App is under battery optimization');
    }
  });
});

Open Battery Optimization Settings #

// Take user to battery optimization settings
OptimizeBattery.openBatteryOptimizationSettings();

Show Disable Dialog #

// Show battery optimization disable dialog
OptimizeBattery.stopOptimizingBatteryUsage();

This opens the battery optimization disable dialog.

Example

🛠️ Setup #

Android Setup #

Add the permission in android/app/src/main/AndroidManifest.xml:

<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS"/>

Important Note: This permission uses the intent ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS, which is not recommended unless it's an exemption case. Such as when the application's main functionality needs battery optimization to be disabled.

Read more here: https://developer.android.com/training/monitoring-device-state/doze-standby#exemption-cases

📋 API Reference #

Methods #

  • isIgnoringBatteryOptimizations() - Check if app is ignoring battery optimization
  • openBatteryOptimizationSettings() - Open battery optimization settings
  • stopOptimizingBatteryUsage() - Show disable optimization dialog

Return Values #

  • isIgnoringBatteryOptimizations() returns Future<bool>
  • Other methods return Future<void>

🚨 Troubleshooting #

Common Issues #

  1. Permission Denied: Ensure the permission is added to AndroidManifest.xml
  2. Settings Not Opening: Check if the device supports battery optimization
  3. Dialog Not Showing: Verify the app has the required permission

Debug Information #

// Check battery optimization status
bool isIgnoring = await OptimizeBattery.isIgnoringBatteryOptimizations();
print('Is ignoring battery optimization: $isIgnoring');

🤝 Contributing #

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

📄 License #

This project is licensed under the MIT License - see the LICENSE file for details.

📞 Support #

For support and questions:

  • Create an issue in the GitHub repository
  • Check the troubleshooting section above
  • Review the API documentation

🔄 Updates #

This package is maintained and updated regularly. Check the CHANGELOG.md for version history and updates.

🙏 Credit #

This plugin is inspired from battery_optimization but with supporting Null safety and Android V2 embedding. This fixed version includes additional improvements and optimizations.

📊 Package Information #


Note: This version is optimized for production use and includes all necessary fixes and improvements. It's a drop-in replacement for the original optimize_battery package with enhanced stability and documentation.

0
likes
150
points
3
downloads

Publisher

unverified uploader

Weekly Downloads

Check for battery optimization status and open settings or disable it - Fixed and optimized version

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on optimize_battery_fixed

Packages that implement optimize_battery_fixed