Лучший способ получить метаданные из Mp3s в Android

Я работал над небольшим медиа-плеером для Android. У меня возникли проблемы с извлечением метаданных из музыкальных файлов. Я использую MediaMetadataRetriever , но это оказалось довольно хлопотным. Кто-нибудь знает, как лучше это сделать? Если да, то как реализовать такой метод?

Я использовал JAudioTagger , который вы можете найти здесь . Он поддерживает (в основном) каждую версию ID3, поэтому вы охвачены даже для старых файлов с устаревшими метаданными. Довольно хорошее (и простое) решение. Другие варианты включают mp3agic и entagged .

Мне удалось прочитать метаданные из базы данных Android, используя здесь код . Просто измените управляемый запрос на что-то вроде:

 String selection = MediaStore.Audio.Media.DATA + " == ?"; cursor = this.managedQuery(media, projection, selection, new String[] {file.getCanonicalPath().toString()}, null); 

Это возвращает курсор к метаданным file . (Автор, название, продолжительность и т. Д.)