juice_power 0.1.0 copy "juice_power: ^0.1.0" to clipboard
juice_power: ^0.1.0 copied to clipboard

Battery and charging state as a Juice bloc — plugged-in, charge level and power-saver mode behind a swappable provider seam.

example/lib/main.dart

import 'package:juice/juice.dart';
import 'package:juice_power/juice_power.dart';

import 'demo_power_provider.dart';
import 'home_screen.dart';

final demo = DemoPowerProvider();

void main() {
  WidgetsFlutterBinding.ensureInitialized();

  // Demo provider so the app runs with no device. Swap for PowerConfig()
  // (default BatteryPlusProvider) in a real app.
  BlocScope.register<PowerBloc>(
    () => PowerBloc.withConfig(PowerConfig(
      provider: demo,
      pollInterval: const Duration(seconds: 1),
    )),
    lifecycle: BlocLifecycle.permanent,
  );

  runApp(const DemoApp());
}

class DemoApp extends StatelessWidget {
  const DemoApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'juice_power demo',
      debugShowCheckedModeBanner: false,
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.amber),
        useMaterial3: true,
      ),
      home: HomeScreen(demo: demo),
    );
  }
}
0
likes
140
points
12
downloads

Documentation

Documentation
API reference

Publisher

unverified uploader

Weekly Downloads

Battery and charging state as a Juice bloc — plugged-in, charge level and power-saver mode behind a swappable provider seam.

Homepage
Repository (GitHub)
View/report issues
Contributing

Topics

#battery #power #bloc #state-management #background

Funding

Consider supporting this project:

github.com

License

MIT (license)

Dependencies

battery_plus, flutter, juice

More

Packages that depend on juice_power