从RingtonePreference获取铃声标题

16

我有一个RingtonePreference,用于选择在Alarm应用中广播到接收器的铃声。
我想在RingtonePrefernce的摘要中显示所选铃声的标题(您选择铃声时看到的列表中显示的标题)。
是否可以获取ID3标签?
但并非所有铃声都是mp3格式,因此这可能不是一个好主意?

目前我的做法是:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext());
strRingtonePreference = prefs.getString("RingtonePref", "DEFAULT_RINGTONE_URI");

这将使strRingtonePreference看起来像"content://media/internal/audio/media/55",对用户来说并不是很直观。

我该怎么做?

1个回答

69
Uri ringtoneUri = Uri.parse(strRingtonePreference);
Ringtone ringtone = RingtoneManager.getRingtone(context, ringtoneUri);
String name = ringtone.getTitle(context);

我怎么能将铃声名称设置为RingTonePreference的摘要? - Mina Dahesh
2
我得到了铃声的 id 而不是 name - Nikunj Paradva
1
我也得到了铃声ID而不是显示名称/标题。 - turkinator

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接