chabislav chabislav - 4 months ago 45
Android Question

How to get current ringtone in Android?

I have found lots of examples how to get default ringtone. Something like that:

Uri alert = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
Ringtone ringtone = RingtoneManager.getRingtone(getApplicationContext(), alert);
ringtone.setStreamType(AudioManager.STREAM_RING);
ringtone.play();


But I want to get the actual current ringtone, that was set by the user.

Answer

I was struggling with this issue as well, so the solution is:

Uri defaultRintoneUri = RingtoneManager.getActualDefaultRingtoneUri(getActivity().getApplicationContext(), RingtoneManager.TYPE_RINGTONE);
Ringtone defaultRingtone = RingtoneManager.getRingtone(getActivity(), defaultRintoneUri);