我使用这段代码,我在这里找到了或多或少,但它总是返回相同的答案:
默认铃声为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);
或代替DEFAULT_RINGTONE_URI使用DEFAULT_ALARM_ALERT_URI, DEFAULT_NOTIFICATION_URI
谢谢你,它正在工作。对于所有其他代码,这是工作代码:
Uri ringtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
Ringtone ringtone = RingtoneManager.getRingtone(this, ringtoneUri);
String ringToneName = ringtone.getTitle(this);
尝试将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更改为所需的声音类型