private static final int RINGTONE_PICKED = 1;
private void doPickRingtone() {
Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,
RingtoneManager.TYPE_RINGTONE);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);
Uri ringtoneUri;
ringtoneUri = RingtoneManager
.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI,
ringtoneUri);
startActivityForResult(intent, RINGTONE_PICKED);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode != RESULT_OK) {
return;
}
switch (requestCode) {
case RINGTONE_PICKED:
// 选择完铃声之后获得选中铃音的URI,将其值存入数据库
Uri pickedUri = data
.getParcelableExtra(RingtoneManager.EXTRA_RINGTONE_PICKED_URI);
new MyLog(pickedUri.toString());//铃声URL
new MyLog(RingtoneManager.getRingtone(this, pickedUri).getTitle(this));//铃声名称
break;
}
}