A Flutter plugin for iOS and Android control system volume.
The show/hide system UI only support Android now
classMyAppextendsStatefulWidget {@override_MyAppStatecreateState()=>_MyAppState();}class_MyAppStateextendsState<MyApp> {double _volumeListenerValue=0;double _getVolume=0;double _setVolumeValue=0;@overridevoidinitState() {super.initState();// Listen to system volume changeVolumeController().listener((volume) {setState(()=> _volumeListenerValue= volume); });VolumeController().getVolume().then((volume)=> _setVolumeValue= volume); }@overridevoiddispose() {VolumeController().removeListener();super.dispose(); }@overrideWidgetbuild(BuildContext context) {returnMaterialApp( home:Scaffold( appBar:AppBar( title:constText('Volume Plugin example app'), ), body:Column( children: [Text('Current volume: $_volumeListenerValue'),Row( children: [Text('Set Volume:'),Flexible( child:Slider( min:0, max:1, onChanged: (double value) { _setVolumeValue= value;VolumeController().setVolume(_setVolumeValue);setState(() {}); }, value: _setVolumeValue, ), ), ], ),Row( mainAxisAlignment:MainAxisAlignment.center, children: [Text('Volume is: $_getVolume'),TextButton( onPressed: ()async { _getVolume=awaitVolumeController().getVolume();setState(() {}); }, child:Text('Get Volume'), ), ], ),TextButton( onPressed: ()=>VolumeController().muteVolume(), child:Text('Mute Volume'), ),TextButton( onPressed: ()=>VolumeController().maxVolume(), child:Text('Max Volume'), ),Row( mainAxisAlignment:MainAxisAlignment.center, children: [Text('Show system UI:${VolumeController().showSystemUI}'),TextButton( onPressed: ()=>setState(()=>VolumeController().showSystemUI=!VolumeController().showSystemUI), child:Text('Show/Hide UI'), ) ], ), ], ), ), ); }}