【问题标题】:Adding tracks to playlist将曲目添加到播放列表
【发布时间】:2018-01-02 10:27:32
【问题描述】:

我正在处理我的音频播放器中的播放列表。我已返回一个代码以将歌曲添加到播放列表。代码工作正常,但我有一个小问题。问题是如果我将一首歌曲添加到播放列表,则会添加同一首歌曲的两个副本。就像,如果我将歌曲 A 添加到播放列表,然后我打开添加歌曲 A 的播放列表,我可以在其中看到歌曲 A 的两个副本。

代码:

 public static void AddSongToPlaylist(long songID, long pID, Context context ){



    Uri pUri = MediaStore.Audio.Playlists.Members.getContentUri("external", pID);

    ContentResolver resolver = context.getContentResolver();
    ContentValues values = new ContentValues();

    String[] cols = new String[] {
            "count(*)"
    };
    Cursor cur = resolver.query(pUri, cols, null, null, null);
    cur.moveToFirst();
    final int base = cur.getInt(0)+1;
    cur.close();

    values.put(MediaStore.Audio.Playlists.Members.PLAY_ORDER,base);
    values.put(MediaStore.Audio.Playlists.Members.AUDIO_ID, songID);

    resolver.insert(pUri,values);
    resolver.notifyChange(Uri.parse("content://media"), null);
    Log.i("URI:",resolver.insert(pUri, values)+"");
    Toast.makeText(context, "Song Added", Toast.LENGTH_SHORT).show();
    Log.i("Song ID:", String.valueOf(songID));

}

【问题讨论】:

    标签: android playlist mediastore android-music-player


    【解决方案1】:

    停止再次通过Log.i() 呼叫resolver.insert()。

    【讨论】:

    • 请在您的回答中给出更多解释。看起来你是对的,但你的答案的措辞不是很清楚,我花了一分钟才意识到你的意思。
    猜你喜欢
    • 2019-12-23
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 2012-09-22
    • 1970-01-01
    相关资源
    最近更新 更多