无法改变短信铃声

时间:2017-03-27 15:58:42

标签: android ringtone

我无法以编程方式更改短信铃声,我可以正常更改手机铃声,但不能更改短信。为什么?有谁知道我要做什么?

我的应用程序有2个按钮,一个用于更改铃声,另一个用于更改短信铃声,但即使我点击更改短信铃声,更改的是铃声...... :(

ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, somFile.getAbsolutePath());
values.put(MediaStore.Audio.Media.ARTIST, "cssounds ");
values.put(MediaStore.MediaColumns.MIME_TYPE, "audio/*");
values.put(MediaStore.Audio.Media.IS_ALARM, false);
values.put(MediaStore.Audio.Media.IS_MUSIC, false);

if (isToque) {
    values.put(MediaStore.MediaColumns.TITLE, "shbRingtone");
    values.put(MediaStore.Audio.Media.IS_RINGTONE, true);
    values.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);
} else {
    values.put(MediaStore.MediaColumns.TITLE, "shbSMS");
    values.put(MediaStore.Audio.Media.IS_RINGTONE, false);
    values.put(MediaStore.Audio.Media.IS_NOTIFICATION, true);
}

Uri uri = MediaStore.Audio.Media.getContentUriForPath(somFile.getAbsolutePath());

//do a delete here before inserting
Uri newUri = getApplicationContext().getContentResolver().insert(uri, values);

if (isToque) {
        RingtoneManager.setActualDefaultRingtoneUri(getApplicationContext(),
                    RingtoneManager.TYPE_RINGTONE, newUri);
        } else {
            RingtoneManager.setActualDefaultRingtoneUri(getApplicationContext(),
                    RingtoneManager.TYPE_NOTIFICATION, newUri);
        }

明细 - isToque是我在点击铃声按钮时设为true的变量,在短信按钮为时为假。

0 个答案:

没有答案