android 个人铃声设置代码
16lz
2021-01-23
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) ; }PS: 如果哪里有误导之处,请纠正。谢谢大家~~~
更多相关文章
- [置顶] (柯昌合)Android Sqlite 持久化框架。类似于hibernate的s
- android通讯录数据库操作
- Android中SQLite数据库的使用
- android查看SQLite数据库linux命令
- adb shell 命令查看android 应用程序 创建的 sqlite 数据库
- Android 数据存储之SQLite数据库存储
- 【android】SQLite数据库之SQLiteOpenHelper与SQLiteDatabase
- android中数据库框架 GreenDao