Как показать текущий заголовок рингтона для Alarm, Notification, VoiceCall, - PullRequest
0 голосов
/ 06 октября 2011

Я использую этот код, который я нахожу здесь более или менее, но этот ответ всегда совпадает с ответом: «Рингтон по умолчанию - Gleam», а это не так.

Я хотел бы показать пользователям, что это за звукиустановить для: будильник, системное уведомление, голосовой вызов, уведомление по календарю, смс-уведомление (я что-то забыл?)

Я пытался использовать этот код:

SharedPreferences prefsRingtones =  PreferenceManager.getDefaultSharedPreferences(getBaseContext());
Uri ringtoneUri = Uri.parse(prefsRingtones.getString("RingtonePref","DEFAULT_RINGTONE_URI"));
Ringtone ringtone = RingtoneManager.getRingtone(this, ringtoneUri);
String ringToneName = ringtone.getTitle(this);

Или intead DEFAULT_RINGTONE_URI использовать DEFAULT_ALARM_ALERT_URI,DEFAULT_NOTIFICATION_URI

Ответы [ 2 ]

2 голосов
/ 06 октября 2011

спасибо, это работает. Для всего остального это рабочий код:

Uri ringtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone ringtone = RingtoneManager.getRingtone(this, ringtoneUri);
String ringToneName = ringtone.getTitle(this);
1 голос
/ 06 октября 2011

Попробуйте установить значение по умолчанию prefsRingtones для RingtoneManager.getDefaultUri (RingtoneManager.TYPE_NOTIFICATION) вместо "DEFAULT_RINGTONE".

SharedPreferences prefsRingtones =  PreferenceManager.getDefaultSharedPreferences(getBaseContext());
Uri ringtoneUri = Uri.parse(prefsRingtones.getString("RingtonePref",RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION)));
Ringtone ringtone = RingtoneManager.getRingtone(this, ringtoneUri);
String ringToneName = ringtone.getTitle(this);

Измените TYPE_NOTIFICATION на тот тип звука, который вам нужен.

...