如何从列表视图中再现特定的mp3文件?

时间:2018-09-16 15:59:06

标签: java android android-mediaplayer

我正在使用Java在android studio中开发音乐应用程序,遇到一个再现从列表视图中单击的特定mp3播放器的问题。我已经使用光标从平板电脑上的Music文件夹中提取了所有mp3文件,现在,由于我是android开发的初学者,所以我不知道如何从列表中的特定mp3文件播放音乐。

private void fetchMP3Files()
{
    ContentResolver contentResolver =  getContentResolver();
    Uri uri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
    Cursor songCursor = contentResolver.query(uri,null,MediaStore.Audio.Media.DATA + " like ? ",new String[] {"%0/Music%"},null);

    if(songCursor != null)
    {
        if(songCursor.moveToFirst())
        {
            do{
                String currentSongTitle = songCursor.getString(songCursor.getColumnIndex(MediaStore.Audio.Media.TITLE));
                String currentSongArtist = songCursor.getString(songCursor.getColumnIndex(MediaStore.Audio.Media.ARTIST));
                String currentSongDuration = songCursor.getString(songCursor.getColumnIndex(MediaStore.Audio.Media.DURATION));
                String currentSongLocation = songCursor.getString(songCursor.getColumnIndex(MediaStore.Audio.Media.DATA));
                songsArrayList.add(currentSongTitle + "\n" + currentSongArtist + "\n" + currentSongDuration + "\n" + currentSongLocation);
            } while(songCursor.moveToNext());
        }
    }
}

这是我提取所有mp3文件的方法

musicList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            playSelectedMP3File();
        }
    });

这是我在列表视图中实现侦听器的代码的一部分,因此当我从列表视图中按一个项目时,会发生一些事情(在我的情况下,应复制mp3文件)

private void playSelectedMP3File()
{
    if(mediaPlayer != null)
    {
        mediaPlayer.release();
    }


}

这是我播放mp3文件的方法,我很困在这里,不知道该怎么办。

我想要

我们将不胜感激。谢谢。

0 个答案:

没有答案