2015-03-03 3 views
0

Я пытаюсь выяснить, как я могу переименовать свой плейлист из MediaStore.Переименование плейлиста из MediaStore

У меня есть код для удаления определенного плейлиста, передав ему указанный идентификатор плейлиста.

С помощью средства определения содержимого существует метод, называемый resolver.delete, который упрощает его, но я не понимаю, как я могу переименовать указанный список воспроизведения.

Что мне нужно сделать для следующего кода, чтобы переименовать указанный список воспроизведения.

private void deletePlaylist(String playlistid) { 
    // // Log.i(TAG, "deletePlaylist"); 

    ContentResolver resolver = getActivity().getContentResolver(); 
    String where = MediaStore.Audio.Playlists._ID + "=?"; 
    String[] whereVal = { playlistid }; 
    resolver.delete(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, where, 
      whereVal); 

    return; 
} 
+1

Вы по-прежнему работаете над этим? Пробовал ли вы метод обновления, то есть «update (Uri uri, ContentValues ​​values, String where, String [] selectionArgs)» –

+0

Я еще не пробовал этот метод, мог бы вы привести пример использования основанный на коде, который у меня выше? Спасибо. – Jack

+0

У вас есть проблемы с resolver.delete? Я делаю, он удаляет файл m3u, но файл восстанавливается при перезагрузке устройства Android. Я знаю, что это связано с Media Service. Хотел бы я удалить навсегда! –

ответ

3

обновление метод ContentResolver должен работать. Для вашего удобства, веб-страницу Google на ContentResolver update.

В любом случае, вот мой предложенный код. Я не пробовал это, но я буду:

ContentValues values = new ContentValues(1); 
values.put(MediaStore.Audio.Playlists.NAME, "NewPlaylist"); 

resolver.update(MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI, 
    values, "_id=" + playlistid, null); 

Обратите внимание на NewPlaylist ваше имя обновляется список, и playlistid Ваш существующий ID. Однако вы можете удалить существующий список воспроизведения. Я вижу ошибки в существующих приложениях Android (на рынке) по этой проблеме, раздражает. Мне нравится знать ваш прогресс. Держи меня в курсе.

+0

Спасибо, что это работает отлично. Я еще не нашел никаких проблем с этим, если я это сделаю, я обновлю вас. Спасибо вам, сударь, хорошо отдохните, где бы вы ни были! :) – Jack

+1

Эй, это здорово. Я хочу создать собственное приложение для плейлистов, так как устал от использования других приложений, которые не работают хорошо, ошибки. Я буду считать тебя своим приятелем в плейлисте, ха-ха. –

+0

Не стесняйтесь обращаться ко мне. Я выпустил новый менеджер списков воспроизведения в Google и Amazon. (обратите внимание, что Google в настоящее время заблокировал мою последнюю версию из-за так называемых проблем с авторскими правами, но последняя версия доступна на Amazon. – Theo

0

Для хорошей оценки, почти то же, что и «Оригинальный Android». Я не нашел никаких проблем с этим.

private final Uri uri = MediaStore.Audio.Playlists.EXTERNAL_CONTENT_URI; 
public void renamePlaylist(Context context, String newplaylist, long playlist_id) { 
    ContentResolver resolver = context.getContentResolver(); 
    ContentValues values = new ContentValues(); 
    String where = MediaStore.Audio.Playlists._ID + " =? "; 
    String[] whereVal = { Long.toString(playlist_id) }; 
    values.put(MediaStore.Audio.Playlists.NAME, newplaylist); 
    resolver.update(uri, values, where, whereVal); 
} 
Смежные вопросы