设置原始资源的自定义名称

时间:2014-06-03 08:52:04

标签: android android-resources

res/raw中有几个音频mp3文件作为应用程序的预包装音频文件。它们都有正确的名称...must contain only [a-z0-9_.],在ListView内解析时看起来不太好看。

我看到很多应用都有自己的音频名称。例如,原始文件名是“default1”,自定义音频名称被视为“The Morning Shine”。

如何在res/raw中为所有自定义音频设置自定义名称?

1 个答案:

答案 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()打电话。

祝你好运。