res/raw
中有几个音频mp3文件作为应用程序的预包装音频文件。它们都有正确的名称...must contain only [a-z0-9_.]
,在ListView
内解析时看起来不太好看。
我看到很多应用都有自己的音频名称。例如,原始文件名是“default1”,自定义音频名称被视为“The Morning Shine”。
如何在res/raw
中为所有自定义音频设置自定义名称?
答案 0 :(得分:1)
如果这些文件是静态的并且正如您所说的那样预先打包,请尝试使用包含每个文件的自定义字符串的xml资源文件。
我不知道您是如何管理列表的,但使用自定义适配器,您可以根据资源ID链接正确的名称。
可能对您有帮助的其他方式是使用Class MediaMetadataRetriever直接从文件中读取标签。
示例:
MediaMetadataRetriever retriever=new MediaMetadataRetriever();
retriever.setDataSource(yourFilePath);
String songName=retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_TITLE);
对于其他字段,您还有其他常量,如METADATA_KEY_ARTIST,METADATA_KEY_ALBUM等。 请参阅:http://developer.android.com/intl/es/reference/android/media/MediaMetadataRetriever.html
当你完成释放记忆时,不要忘记给retriever.release()
打电话。