v1.3.4
flutter_volume_controller
一個 Flutter 外掛程式,用於在不同平台控制系統音量並監聽音量變更。
71喜歡 5.3萬近 30 天下載150Pub 分數
AndroidiOSmacOSWindowsLinux
一個 Flutter 外掛程式,用於在不同平台控制系統音量並監聽音量變更。
{"sdk":"flutter"}^2.0.17{"sdk":"flutter"}^5.0.0以下為英文專案原文快照,最新內容請造訪 GitHub。
A Flutter plugin to control system volume and listen for volume changes on different platforms.
This plugin supports Swift Package Manager (SPM) on Apple platforms:
true to display system volume slider when changing volume.await FlutterVolumeController.updateShowSystemUI(true);
final volume = await FlutterVolumeController.getVolume();
await FlutterVolumeController.setVolume(0.5);
step is set to null, it will use the default system stepping
value.step is undefined, the default stepping value is set to 0.15.await FlutterVolumeController.raiseVolume(0.2);
await FlutterVolumeController.raiseVolume(null);
step is set to null, it will use the default system stepping
value.step is undefined, the default stepping value is set to 0.15.await FlutterVolumeController.lowerVolume(0.2);
await FlutterVolumeController.lowerVolume(null);
final isMuted = await FlutterVolumeController.getMute();
await FlutterVolumeController.setMute(true);
await FlutterVolumeController.setMute(false);
await FlutterVolumeController.toggleMute();
AudioStream.voiceCall, AudioStream.system, AudioStream.ring
, AudioStream.music, AudioStream.alarm, AudioStream.notification.await FlutterVolumeController.setAndroidAudioStream(stream: AudioStream.system);
final stream = await FlutterVolumeController.getAndroidAudioStream();
AudioSessionCategory.ambient, AudioSessionCategory.multiRoute
, AudioSessionCategory.playAndRecord, AudioSessionCategory.playback
, AudioSessionCategory.record, AudioSessionCategory.soleAmbientawait FlutterVolumeController.setIOSAudioSessionCategory(category: AudioSessionCategory.playback);
final category = await FlutterVolumeController.getIOSAudioSessionCategory();
emitOnStart to control whether volume level should be emitted immediately right after the
listener is attached.@override
void initState() {
super.initState();
FlutterVolumeController.addListener(
(volume) {
debugPrint('Volume changed: $volume');
},
);
}
@override
void dispose() {
FlutterVolumeController.removeListener();
super.dispose();
}
MPVolumeView internally which does not works on simulator. Please uses physical
device for testing.PlatformException if the default
audio device doesn't support volume control, like an external monitor.FlutterActivity::onKeyDown to customize the buttons action.