我創建了音樂播放器,但我有問題,當我檢索歌曲標題和藝術家時,需要很長時間。 這裏是我的代碼:Android媒體元數據檢索器性能低下
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;
}
感謝它幫助 – alex 2014-10-03 08:21:39