1、播放MP3文件
2、在播放MP3文件的同时显示歌词
3、从服务器下载歌曲列表(XML形式)
4、从服务器下载MP3和LRC文件
基本流程:
1、客户打开MP3播放器时向服务器发送一个请求,服务器以XML文件的形式返回服务器的歌曲列表
所用的技术:下载xml文件,解析xml技术,在客户端更新完列表之后,发送一个Notification通知用户
2、根据下载的xml文件更新歌曲列表
所用的技术:listActivity,当用户点击某个列表时弹出对话框(Dialog),询问用户是否下载该歌曲,然后下载用户指定的歌曲和歌词,下载完了提示(Notification)用户;
3、分析MP3歌词文件
所用的技术:分析LRC文件,其中重点是获得LRC的时间节点,然后更新歌词,主要是IO的操作
4、播放MP3文件
所用的技术:播放MP3文件
5、在播放MP3文件的同时,实时更新歌词
所用的技术:Handler异步操作更新歌词,歌词的显示区域
6、嵌入广告---》赚钱
MP3播放器的模块:
1、用户界面模块:分为两块Mp3ListActivity和Mp3PlayerActivity
Mp3ListActivity:
显示MP3文件列表;
响应用户的点击,并弹出确认下载的对话框;
按菜单按钮时,在菜单上提供刷新的按钮;
实现自定义的Adapter,分为不同的样式显示已经下载和为下载的文件;
文件下载的通知;
广告;
Mp3PlayerActivity:
显示播放MP3所使用的控件:开始、停止、结束按钮,播放进度条可以拖拽的进度条,音量控制按钮,歌词显示
广告;
2、文件下载模块:
HttpDownLoader:下载MP3歌曲和歌词,通知栏里面显示下载的进度
3、XML解析模块:
XMLParser:生成XMLParser对象;
ContentHandler:解析XML文件的内容;
4、IO模块:
LRCParser:读取LRC文件;
SDCardAccesser:SDCard读写功能;
5、MP3播放模块:
Mp3PlayerService:响应播放事件,响应暂停事件,响应停止事件,更新播放进度条,更新歌词
6、MP3播放器的设置:
设置下载文件所在的位置;
设置编码格式;