volume

Creator: coderz1093

Last updated:

Add to Cart

Description:

volume

volume #
Controll Volume in Android programatically.
No IOS Implementation yet . Pull Request for ios implementation are welcome.
Streams #
AudioManager.STREAM_VOICE_CALL -> Controll IN CALL Volume
AudioManager.STREAM_SYSTEM -> Controll SYSTEM Volume
AudioManager.STREAM_RING -> Controll RINGER Volume
AudioManager.STREAM_MUSIC -> Controll MEDIA Volume
AudioManager.STREAM_ALARM -> Controll ALARM Volume
AudioManager.STREAM_NOTIFICATION -> Controll NOTIFICATION Volume
copied to clipboard
Show and Hide System UI #
ShowVolumeUI.SHOW (DEFAULT) -> Show system volume UI while changing volume
ShowVolumeUI.HIDE -> Do not show system volume UI while changing volume
copied to clipboard
Functions and getters #
Volume Buttons will affect this volume when in app #

await Volume.controlVolume(AudioManager audioManager); // pass any stream as parameter

Returns maximum possible volume in integers #

await Volume.getMaxVol; // returns an integer

Returns current volume level in integers #

await Volume.getVol;// returns an integer

Set volume for the stream passed to controlVolume() function #

await Volume.setVol(int i, {ShowVolumeUI showVolumeUI});


Max value of i is less than or equal to Volume.getMaxVol.


showVolumeUI is optional parameter which defaults to ShowVolumeUI.SHOW.


Usage #
class _MyAppState extends State<MyApp> {
int maxVol, currentVol;

@override
void initState() {
super.initState();
audioManager = AudioManager.STREAM_SYSTEM;
initAudioStreamType();
updateVolumes();
}

Future<void> initAudioStreamType() async {
await Volume.controlVolume(AudioManager.STREAM_SYSTEM);
}

updateVolumes() async {
// get Max Volume
maxVol = await Volume.getMaxVol;
// get Current Volume
currentVol = await Volume.getVol;
setState(() {});
}

setVol(int i) async {
await Volume.setVol(i, showVolumeUI: ShowVolumeUI.SHOW);
// or
// await Volume.setVol(i, showVolumeUI: ShowVolumeUI.HIDE);
}
// To implement the volume Up and volume Down button press programatically.

copied to clipboard

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files:

Customer Reviews

There are no reviews.