简易MP3实现包括以下几个部分:
1. 下载模块
1> 功能
a> 从服务器下载歌曲列表
b> 根据用户选择下载对应的MP3文件以及对应的lrc文件(如果存在)
2> 涉及的技术
a> 网络操作String path = "需要下载的文件路径"; URl url = new URL(path); HttpURLConnection httpConn = (HttpURLConnection) url.openConnection(); InputStream inputStream = httpConn.getInputStream();
b> IO操作如果需要操作的是文本文件可以使用Reader,该类可以直接按行读取,操作比较简单,通常加入缓冲技术提高效率BufferedReader bfr = new BufferedReader(new InputStreamReader(inputStream));
2. 文件列表解析模块
1> 功能
a> 解析xml文件
2> 涉及的技术
a> xml解析,可以有SAX,dom,pull解析,本次学习的是SAX解析,加入DefaultHandler参与解析
3. 显示模块
1> 功能
a> 显示服务器提供的下载列表b> 显示本地已下载的文件列表
2> 涉及的技术
a> TableActivity分页显示activity的布局文件包括固定的3部分,TabHost,TabWidget, FrameLayout
4. 播放模块
1> 功能
a> 根据用户选择播放相应的MP3文件b> 根据播放时间同步显示歌词
2> 涉及的技术
a> 播放放在Service中,这样可以保证在后台运行时不会被垃圾回收机制轻易的回收b> 歌词同步handler,Runnable,BroadCastReceiver
总结:
1. 学习到的知识点:Handler,Service,BroadCastReceiver,网络操作,ListActivity, TabActivity;
2. 编程技巧,完成一个功能,测试一个功能,这样对以后的初错带来方便;
3. 代码重构,可以先将功能写出来,等功能测试完成后,再对现有代码进行重构;
代码链接:
http://download.csdn.net/detail/u013378953/6917117