Pakete, Repositories und App-Kategorien suchen

Paketdetailsv3.7.1

volume_controller

Ein Flutter-Volumen-Plugin für mehrere Plattformen zur Steuerung des Systemvolumens.

AndroidiOSmacOSWindowsLinux
30-Tage-Downloads
187.000
Likes
132
Pub-Punkte
160

Paket installieren

flutter pub add volume_controller

Paketübersicht

Aus öffentlichen Paketdaten erstellte Orientierung.

Das volume_controller-Paket ist ein plattformübergreifender Flutter-Plugin, der Entwicklern die Steuerung des Systemvolumens auf Android, iOS, macOS, Windows und Linux ermöglicht. Es bietet eine einfache API zum Anpassen, Stummschalten und Abfragen von Lautstärkepegeln und eignet sich ideal für Medien-Apps, Audio-Tools oder jede Anwendung, die systemnahe Audiokontrolle erfordert. Der Plugin abstrahiert plattformspezifische Implementierungen und sorgt so für konsistentes Verhalten über Geräte hinweg. Er unterstützt sowohl strombasierte Volumemonitoring als auch direkte Volumenmanipulation. Aufgrund seiner einfachen Integration funktioniert er nahtlos in bestehenden Flutter-Projekten.

Anwendungsfälle

  • Medienwiedergabe-Lautstärkeregelung
  • Audio-App-Systemintegration
  • Zugänglichkeitstools
  • Automatisierte Prüfung von Audiofunktionen
  • Systemweite Lautstärkeregelung

Hauptmerkmale

  • Plattformübergreifende Unterstützung (Android, iOS, macOS, Windows, Linux)
  • Lautstärkeanpassung und Stummschaltung
  • Echtzeit-Volumenüberwachung über Streams
  • Einfache, konsistente API
  • Plattformabstraktion für native Lautstärkeregelungen

Geeignet für

  • Entwickler, die audiozentrierte Apps erstellen
  • Apps, die Zugriff auf das Systemvolumen benötigen
  • Multiplattform-Audio-Tools
  • Audiverhalten über verschiedene Betriebssysteme testen

Hinweise

  • Erforderliche Plattformberechtigungen
  • Das Verhalten kann sich leicht zwischen den Betriebssystemen unterscheiden
  • Beschränkt auf Systemvolumen (nicht app-spezifisch)
  • Nicht geeignet für Low-Level-Audioverarbeitung
  • Kann auf einigen Plattformen Benutzerberechtigungen erfordern

Original-README

Originaler README-Schnappschuss aus dem verknüpften Quell-Repository. Aktuelle Inhalte finden Sie im Repository.

Volume Controller

pub package license

Control and observe the system volume on Android, iOS, macOS, Windows, and Linux.

Requirements

  • Flutter >=3.44.0
  • Dart ^3.12.0

The iOS plugin uses the scene lifecycle APIs introduced for Flutter plugins in Flutter 3.38.

Supported Platforms

Platform Supported
Android ✅
iOS ✅
macOS ✅
Windows ✅
Linux ✅

Notes

  • iOS volume control must be tested on a real device. The simulator does not support system volume control.
  • showSystemUI is supported on Android and iOS only.
  • Mute is not volume 0 on every platform:
    • Windows, macOS, Linux: system mute. Volume can stay non-zero while muted.
    • Android API 23+: STREAM_MUSIC mute (isStreamMute / ADJUST_MUTE).
    • Android API 21–22: mute sets volume to 0 and unmute restores the previous volume saved by the plugin.
    • iOS: there is no public system media mute API. isMuted() is volume == 0. setMute(true) sets volume to 0; setMute(false) restores the previous volume saved by the plugin. iOS 26 AVAudioSession.setOutputMuted is not used, because it mutes this app's audio session rather than the system volume.

Variables

ShowSystemUI

Show or hide the volume system UI. The default value is true. Supported on iOS and Android only.

VolumeController.instance.showSystemUI = true;

Functions

GetVolume

Get the current system volume.

double volume = await VolumeController.instance.getVolume();
SetVolume

Set the system volume. The input should be in the range 0.0 to 1.0.

await VolumeController.instance.setVolume(double volume);
AddListener

Add a listener to monitor system volume changes.

  • fetchInitialVolume: Send the current volume immediately. Defaults to true.
VolumeController.instance.addListener((volume) {
  // Do something with the volume
}, fetchInitialVolume: true);
RemoveListener

Remove the volume listener.

await VolumeController.instance.removeListener();
IsMuted

Check whether the system is muted.

bool isMuted = await VolumeController.instance.isMuted();
SetMute

Mute or unmute the system volume.

await VolumeController.instance.setMute(bool mute);

Kategorien

Quell-Repository

Projekte, die dieses Paket verwenden