7

i want to play the ringtone selected in the settings of the device, but in loop mode.

here you can see how to play it only once: How to play ringtone/alarm sound in Android

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone r = RingtoneManager.getRingtone(getApplicationContext(), notification);
r.play();

I need to make it play in loop mode, but i don't know how to do it...

thanks

Community
  • 1
  • 1
NullPointerException
  • 36,107
  • 79
  • 222
  • 382

2 Answers2

14

It seems the simplest way is to create a MediaPlayer from the Uri returned from RingtoneManager, and set it to loop.

Uri notification = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
MediaPlayer player = MediaPlayer.create(this, notification);
player.setLooping(true);
player.start();
Mike M.
  • 38,532
  • 8
  • 99
  • 95
2

By using setLooping(true) you can achieve this:

Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
mMediaPlayer.setDataSource(this, alert);
mMediaPlayer.setLooping(true);
mMediaPlayer.prepare();
mMediaPlayer.start();
Marium Jawed
  • 391
  • 4
  • 9