Search packages, repositories and app categories

Package detailsv0.0.2

brightness_volume_manager

A Flutter plugin to manage screen brightness and volume on Android and iOS. Also provides the custom widget for brightness and volume swipe.

AndroidiOS
30-day downloads
49
Likes
1
Pub points
140

Install package

flutter pub add brightness_volume_manager

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

A Flutter plugin that enables control over screen brightness and device volume on both Android and iOS platforms. It offers a customizable swipe gesture widget for adjusting brightness and volume intuitively. The package provides seamless integration with native device APIs, ensuring smooth user interaction across devices. Ideal for media apps, settings interfaces, or any app requiring direct hardware-level adjustments. Supports both platforms with consistent behavior and responsive design.

Use cases

  • Media player controls
  • Device settings UI
  • Gesture-based volume adjustment
  • Custom brightness sliders
  • App with immersive controls
  • Accessibility features

Key features

  • Cross-platform support (Android & iOS)
  • Swipe gesture widget for brightness/volume
  • Native API integration
  • Customizable UI components
  • Real-time adjustments
  • Simple setup via pub add

Suitable for

  • Developers building media apps
  • UI/UX designers seeking gesture controls
  • Apps needing device-level hardware access
  • Educational or accessibility-focused applications
  • Projects requiring intuitive volume/brightness controls

Considerations

  • Requires platform-specific permissions
  • Limited to Android and iOS
  • May need additional handling for background execution
  • Not suitable for web or desktop
  • Behavior may vary slightly between devices

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

brightness_volume_manager

A Flutter plugin to manage screen brightness and volume on Android and iOS. Also provides the custom widget for brightness and volume swipe.

Features

  • Get and set screen brightness
  • Reset custom brightness
  • Get and set system volume
  • Keep the screen on
  • Custom swipe widget for brightness
  • Custom swipe widget for volume

Installation

Add the package to your pubspec.yaml:

    brightness_volume_manager: ^latest_version

latest_version:
pub package

API
Get System brightness
    BrightnessVolumeManager().getBrightness();
Set brightness
  BrightnessVolumeManager().setBrightness(brightness);
Reset Custom brightness
  BrightnessVolumeManager().resetCustomBrightness();
Get System Volume
    BrightnessVolumeManager().getVolume();
Set volume
  BrightnessVolumeManager().setVolume(v);
Get screen kept on flag
  BrightnessVolumeManager().isScreenKeptOn();
Set screen kept on flag
  BrightnessVolumeManager().keepScreenOn(true);
Add swipe widget vertical
  SwipeManager(
      initialValue: brightness,
      onChange: (v, z) {
        BrightnessVolumeManager().setBrightness(v);
      },
      direction: SlideDirection.vertical,
      childBuilder: (ctx, value) => AnimatedSwitcher(
        layoutBuilder: (Widget? currentChild,
            List<Widget> previousChildren) {
          return currentChild!;
        },
        duration: const Duration(seconds: 1),
        child: Container(),
      )
  )
Add swipe widget horizontal
  SwipeManager(
    initialValue: brightness,
    width: 200,
    height: 20,
    onChange: (v, z) {
      BrightnessVolumeManager().setBrightness(v);
    },
    direction: SlideDirection.horizontal,
    childBuilder: (ctx, value) => AnimatedSwitcher(
        layoutBuilder: (Widget? currentChild,
        List<Widget> previousChildren) {
          return currentChild!;
        },
        duration: const Duration(seconds: 1),
      child: Container(),
    )
),

Contributor

Minas Chalise Bikram koju

Categories

Dependencies

Dependency list 1 items

  • plugin_platform_interface^2.0.2

Source repository

Projects using this package

No data available yet.