- 1、本文档共80页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(项目管理)M播放器项目实践
Mp3播放器项目
项目功能简介:
环境配置:
服务器:tomcat
XML文件:(用来记录服务器中所有歌曲信息)
Mp3文件和LRC文件
1、将文件、Mp3文件和LRC文件都放置到tomcat-----webapps----Mp3.
2、在tomcat-----webapps----Mp3中建立WEB-INF文件夹(添加配置文件)
3、在eclipse中启动tomcat,并在浏览器中实验是否能正确访问到以上文件
(localhost:8080)
注意:每次启动eclipse后要运行这个程序的话,别忘了启动tomcat啊!否则读取不了服务器中的Mp3列表的。
第一集:
实现Mp3文件列表的显示--------点击menu-------出现更新列表按钮,点击更新列表按钮,可以显示服务器中所有的歌曲信息
功能分解:
menu按钮显示
从服务器下载
用SAX方法解析:
①ContentHandler类的设计;
②SAX解析;
功能实现:
创建类Mp3ListActivity
重写回调函数publicbooleanonCreateOptionsMenu(Menumenu){}
实现menu按钮显示功能:
publicbooleanonCreateOptionsMenu(Menumenu){
(0,UPDATE,1,R.3list_update);
(0,ABOUT,2,R.3list_about);
return(menu);
}
注意点:
在类中,元素的ID最好定义一个常量来代替实际的int型数据,以便修改。如:UPDATEABOUT
创建HttpDownloader类,实现xml文本文件的下载功能:
import.*;
import.*;
import.;
publicclassHttpDownloader{
publicInputStreamgetInput(URLurl){
HttpURLConnectionhttpconn=null;
InputStreaminput=null;
try{
httpconn=(HttpURLConnection)();
input=();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
returninput;
}
publicStringtextDownload(StringurlStr){
URLurl;
InputStreaminput=null;
StringBuffersb=newStringBuffer();
Stringline=null;
BufferedReaderbuffer=null;
try{
url=newURL(urlStr);
input=getInput(url);
buffer=newBufferedReader(newInputStreamReader(input,"gb2312"));
while((line=())!=null){
(line);
}
//注意:此处一定要用一个line进行append,否则会读取数据不完整
//注意:记得将InputStreamReader中的编码设置为"gb2312",否则不可读取中文
}catch(Exceptione){
e.printStackTrace();
}finally{
try{
();
}catch(Exceptione){
e.printStackTrace();
}
}
return();
}
}
注意:要在AndroidManifest中添加访问internet的权限:
<uses-permissionandroid:name=".INTERNET"/>
<uses-permissionandroid:name=".WRITE_EXTERNAL_STORAGE"/>
创建Mp3ListContentHandler类,实现ContentHandler类的设计,以便xml的解析用。
在解析时,将每一个Mp3看做一个
对象,即:<resource>....</resource>之间子元素是这个Mp3对象中的私有变量。因此还需要创建一个Mp3Info类,以实现在xml文件解析过程中对每个Mp3的属性进行存储:
publicclassMp3Info{
privateStringid;
privateStringmp3Name;
privateStringmp3Size;
privateStringlrcName;
privateStringlrcSize;
/**
*直接右击然后source选择生成get和set方法以及toString方法以及构造函数(带参数和不
文档评论(0)