我创造了音乐播放器,但我有问题,当我检索歌曲标题和艺术家时,需要很长时间。 这是我的代码:
private void updateListData()
{
Song song;
ArrayList<Song> tempSongList = new ArrayList<>();
MediaMetadataRetriever myRetriever;
for(int i = 0;i < songsList.size();i++)
{
song = songsList.get(i);
try
{
myRetriever = new MediaMetadataRetriever();
myRetriever.setDataSource(song.getSongPath());
song.setTitle(myRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE));
song.setArtist(myRetriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_ARTIST));
// release Media Retriever
myRetriever.release();
tempSongList.add(song);
}
catch (IllegalArgumentException e)
{
e.printStackTrace();
}
catch (RuntimeException e)
{
e.printStackTrace();
}
}
songsList = tempSongList;
}