1.首先了解MP3文件的构造。
MP3文件最后128位是ID3信息,其中包括了歌手信息,专辑信息,艺术家...等等
所以在读取文件时需要处理ID3信息,
使用RandomAccessFile读取最后128位,具体代码为:
Songinfo中就保存了已经取得ID3信息的MP3文件
2.取得SD卡中所有的MP3文件
在学习笔记一种介绍了SD卡的遍历,所以取得MP3文件很简单,只需加入判断文件类型即可
笔记一中的 getAllFiles文件改写成
此时得到了 含有ID3信息的文件List;
将他们显示在ListView中(过程不再赘述)
3.为ListView添加OnItemClick事件监听,点击后进行音乐播放
下面介绍播放音乐所用到的MediaPlayer类
让MediaPlayer开始播放音乐的方法为
注意在Start之前一定要处于prepare状态
暂停可以调用 Musicplayer.pause();
恢复播放可以重新调用start方法。
下面为全部代码 (可运行)
//Mp3Reader.java
//MusicLibrary.java
//SongInfo.java
//youngMediaPlayer.java
//res/layout/main.xml
//res/layout/relative.xml