首先先上几张Mars视频中的功能分析图:
1.项目开发环境:
- 服务器:Tomcat
- 客户端:Eclipse(Android SDK)
2.功能分析:
- 用户界面:
- 显示Mp3文件列表,包括服务器上的MP3文件以及本地的MP3文件
- 通过Menu对列表进行刷新操作和退出操作
- 服务器上的MP3列表用户可以点击进行下载相对应的MP3文件以及lrc文件
- 本地的MP3列表用户可以点击进行MP3文件的播放,暂停,停止功能并同步显示歌词
2. 文件下载模块:
- 下载MP3文件以及Lrc文件
3. XML解析
- 解析存于服务器上的xml文件内信息,该信息存放了mp3文件的名称大小以及lrc文件的名称大小
4. mp3文件播放模块
- 提供3个Button分别实现MP3的播放,暂停,停止
- 同步的显示对应mp3文件的歌词文件.lrc
5. IO模块
- 读取lrc文件
- SDCard的读写功能
3.项目分析
- 服务器端的搭建及配置
服务器使用的是Tomcat-6.0.36,在文件目录下\webapps新建一个文件mp3,其结构为.mp3文件及对应的.lrc文件,WEB-INFO文件(内含web.xml),resources.xml(解析所需xml文件,内含mp3的名称大小及lrc的名称大小)
web.xml:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <web-app xmlns="http://java.sun.com/xml/ns/javaee"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
5 version="2.5">
6 </web-app>
看Mars所说该xml文件可以直接从\webapps中别的目录下复制粘贴web.xml,
在这里提醒一下:Mars的视频中mp3名是英文的,因此encoding的编码类型可以不考虑,但是如果你的MP3名是中文的,需要使用UTF-8。
resources.xml:
1 <?xml version="1.0" encoding="UTF-8"?>
2 <resources>
3 <resource>
4 <id>0001</id>
5 <mp3.name>彩色的黑.mp3</mp3.name>
6 <mp3.size>9930117</mp3.size>
7 <lrc.name>彩色的黑.lrc</lrc.name>
8 <lrc.size>2531</lrc.size>
9 </resource>
10 <resource>
11 <id>0002</id>
12 <mp3.name>红尘客栈.mp3</mp3.name>
13 <mp3.size>11075875</mp3.size>
14 <lrc.name>红尘客栈.lrc</lrc.name>
15 <lrc.size>1586</lrc.size>
16 </resource>
17 </resources>
这里的resources.xml暂时只写了2个MP3包含name和size标签,当然数量你也可以增加,并且还可以添加其余标签,如MP3的演唱者,MP3的风格类型等。
注意:这里因为是中文名的MP3,因此使用编码为UTF-8
然后你需要将你准备好的MP3文件以及lrc文件复制到目录\webapps\mp3中来。至此服务器端的简单搭建告一段落。
下节将介绍功能主界面的设计及相关的代码。留意~