Удаление рингтона программно в Android
Я знаю, как вставить рингтон программно, но я хочу знать, как удалить конкретный рингтон из списка системных рингтонов. Что я знаю, это название мелодии.
Я много гуглил по этому поводу, но, к сожалению, не смог найти способа добиться именно того, чего я хочу.
Пожалуйста, сообщите мне способ удаления мелодии звонка, используя название мелодии звонка.
1 ответ
Решение
Попробуй как удалить рингтон из 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
}