flutter_ringtone_player 3.2.0 icon indicating copy to clipboard operation
flutter_ringtone_player: ^3.2.0 copied to clipboard

A simple player for system default ringtones, alarms and notifications

flutter_ringtone_player #

A simple ringtone, alarm & notification player plugin.

pub package flutter

Usage #

Add following import to your code:

import 'package:flutter_ringtone_player/flutter_ringtone_player.dart';

Then simply call this to play system default notification sound:

FlutterRingtonePlayer.playNotification();

There's also this generic method allowing you to specify in detail what kind of ringtone should be played:

FlutterRingtonePlayer.play(
  android: AndroidSounds.notification,
  ios: IosSounds.glass,
  looping: true, // Android only - API >= 28
  volume: 0.1, // Android only - API >= 28
  asAlarm: false, // Android only - all APIs
);

Also you can specify a custom ringtone from assets that works for both Android and iOS:

FlutterRingtonePlayer.play(fromAsset: "assets/ringtone.wav");  

You can specify a platform specific ringtone and it will override the one from assets:

FlutterRingtonePlayer.play(  
 fromAsset: "assets/ringtone.wav", // will be the sound on Android
 ios: IosSounds.glass 			   // will be the sound on iOS
 );  

.play*() optional attributes #

AttributeDescription
bool loopingEnables looping of ringtone. Requires FlutterRingtonePlayer.stop(); to stop ringing.
double volumeSets ringtone volume in range 0 to 1.0.
bool asAlarmAllows to ignore device's silent/vibration mode and play given sound anyway.

To stop looped ringtone please use:

FlutterRingtonePlayer.stop();

Above works only on Android, and please note that by default Alarm & Ringtone sounds are looped.

Default sounds #

MethodAndroidiOS
playAlarmRingtoneManager.TYPE_ALARMIosSounds.alarm
playNotificationRingtoneManager.TYPE_NOTIFICATIONIosSounds.triTone
playRingtoneRingtoneManager.TYPE_RINGTONEIosSounds.electronic

Note on iOS sounds #

If you want to use any other sound on iOS you can always specify a valid Sound ID and manually construct [IosSound]:

FlutterRingtonePlayer.play(
  android: AndroidSounds.notification,
  ios: const IosSound(1023),
  looping: true,
  volume: 0.1,
);
149
likes
130
pub points
97%
popularity

Publisher

verified publisher iconinway.dev

A simple player for system default ringtones, alarms and notifications

Repository (GitHub)

Documentation

API reference

License

Icon for licenses.MIT (LICENSE)

Dependencies

flutter, path_provider

More

Packages that depend on flutter_ringtone_player