Contentresolver.delete()在安卓系统中无法工作

3
在我的安卓应用中,我想在用户长按特定歌曲时从播放列表中删除该歌曲。为此,我使用了Contentresolver.delete()方法,但它不起作用。它既不抛出错误也不删除数据?这是我的代码,请告诉我为什么它不起作用。
代码:
    ContentResolver resolver = DefaultSongList.this.getContentResolver();
    Uri mUri = MediaStore.Audio.Playlists.Members.getContentUri("external",playListId);  
    String audioId = songsList.get(pos).get("id");
    resolver.delete(mUri,MediaStore.Audio.Playlists.Members.AUDIO_ID +" = "+ audioId , null);
    Toast.makeText(DefaultSongList.this, "Song removed from Playlist.", Toast.LENGTH_SHORT).show();

你有检查 resolver.delete(...) 的结果吗? - user
现在这段代码对我来说已经可以工作了...在获取音频ID时有一个小错误。 - Zankhna
1个回答

2

试试这个:

public void removePlaylistMember(Context context, long memberid,
        long mplaylistid) {
    try {
        Uri uri = MediaStore.Audio.Playlists.Members.getContentUri(
                "external", mplaylistid);
        String selection = MediaStore.Audio.Playlists.Members.AUDIO_ID
                + "=?";
        String selectionargs[] = { String.valueOf(memberid) };
        context.getContentResolver().delete(uri, selection, selectionargs);
    } catch (Exception e) {
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接