データベースにプレイリストを作成し、プレイリストから曲を削除したり、曲を他の位置に移動したりするなど、メディアプレーヤーアプリでAndroidを使用しています(アプリには並べ替え機能、ドラッグアンドドロップがあります) 、それは単に機能しません。削除と並べ替えに次の 2 つのコードを使用しています。
public boolean movePlaylistSong(int playlistId, int from, int to){
try{
return MediaStore.Audio.Playlists.Members.moveItem(context.getContentResolver(), playlistId, from, to);
}catch(Exception e){
Logger.e(TAG, e.getMessage());
}
return false;
}
public boolean removeFromPlaylist(int playlistId, int audioId) {
try{
ContentResolver resolver = context.getContentResolver();
Uri uri = MediaStore.Audio.Playlists.Members.getContentUri("external", playlistId);
return resolver.delete(uri, MediaStore.Audio.Playlists.Members.AUDIO_ID +"=?", new String[]{String.valueOf(audioId)}) != 0;
}catch(Exception e){
e.printStackTrace();
}
return false;
}
どちらも成功したことを示す true を返しますが、データベース (プレイリストの外部コンテンツ uri) からプレイリストを再度リロードすると、変更が適用されていない元のものが返されます。成功の結果を返しますが、実際には機能しませんでした。
前もって感謝します。