androids

 

android 个人铃声设置代码

1、首先选中列表的铃声

private void doPickRingtone() {

Intent intent
= new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
// Allow user to pick 'Default'
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
// Show only ringtones
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_RINGTONE);
// Don't show 'Silent'
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);

Uri ringtoneUri;
if (mCustomRingtone != null) {
ringtoneUri
= Uri.parse(mCustomRingtone);
}
else {
// Otherwise pick default ringtone Uri so that something is selected.
ringtoneUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_RINGTONE);
}

// Put checkmark next to the current ringtone for this contact
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, ringtoneUri);

// Launch!
startActivityForResult(intent, RINGTONE_PICKED);
}

2、选中之后修改数据库

@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);
handleRingtonePicked(pickedUri);
break;
}
}
}

private void handleRingtonePicked(Uri pickedUri) {
if (pickedUri == null || RingtoneManager.isDefault(pickedUri)) {
mCustomRingtone
= null;
}
else {
mCustomRingtone
= pickedUri.toString();
}
saveData();
}

/**
* 保存数据
*/
private void saveData() {
ContentValues values
= new ContentValues();
values.put(Contacts.CUSTOM_RINGTONE, mCustomRingtone);
//这里的mContactId是当前联系人的Id
getContentResolver().update(Contacts.CONTENT_URI, values, Contacts._ID + " = " + mContactId, null) ;
}

posted on 2011-02-22 16:41  androids  阅读(2070)  评论(0)    收藏  举报

导航