我想知道如何从MediaStore重命名我的播放列表。
下面我有一个代码,通过传递指定的播放列表ID来删除特定的播放列表。
使用内容解析器时,有一种名为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;
}
答案 0 :(得分:3)
ContentResolver的更新方法应该有效。为方便起见,请访问ContentResolver update的Google网页。
无论如何,这是我建议的代码。 我还没试过,但我会:
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应用程序(市场上)的漏洞,很烦人。 我想知道你的进步。让我发布。
答案 1 :(得分:0)
为了更好的衡量标准,与#34;原创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);
}