4

我知道以编程方式插入铃声,但我想知道如何从系统铃声列表中删除特定铃声。我所知道的是铃声的标题。

我用谷歌搜索了很多,但不幸的是,找不到任何方法来实现我想要的。

请指导我使用铃声标题删除铃声的方法。

4

1 回答 1

6

尝试删除铃声MediaStore.Audio.Media

Uri uri = MediaStore.Audio.Media.getContentUriForPath(ringtone_path);  
int roweffected = getContentResolver().delete(uri,  
       MediaStore.MediaColumns.DATA + "=\"" + ringtone_path + "\"",  
       null);

if(roweffected>0){
  //ringtone deleted
}
else{
  //ringtone not deleted
}

编辑: 您还可以从列表中删除 RINGTONE:

ContentValues cv = new ContentValues();
Uri uri = MediaStore.Audio.Media.getContentUriForPath(ringtone_path);
cv.put(MediaStore.Audio.Media.IS_RINGTONE, false);
cv.put(MediaStore.Audio.Media.IS_NOTIFICATION, false);
cv.put(MediaStore.Audio.Media.IS_ALARM, false);
cv.put(MediaStore.Audio.Media.IS_MUSIC, true);

int rowupdate = getContentResolver().update(uri,
       cv, MediaStore.MediaColumns.DATA + "=?",new String[] {ringtone_path});

if(rowupdate>0){
  //ringtone update
}
else{
  //ringtone not update
}
于 2012-12-20T11:15:55.323 回答