版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Android开发之在线播放器By alephsoul这节将介绍一个在线播放音乐的小程序,简单的介绍一下这个程序完成了什么,本程序通过访问已事先运行起来的一个web网站,通过该网站能看到几首音乐,点击“播放”就可以在本机上播放网络上的音乐,代码简单的很,不过我觉得这个创意还是不错滴为了能做出效果,我把用到的高级技术能裁剪的都裁剪掉了,下面用到的技术是完成这个项目的最小技术集。1、 android媒体库里MediaPlayer类的使用/核心12、 android类库中的WebView的使用3、 android中java和javascript的交互/核心24、 一丁点Web开发的知识(html,j
2、avascript)下面是我做出来的几张效果图Tomcat服务器中应用程序的目录结构Chrome浏览器中浏览效果图android程序结构图Android中浏览效果图注:点击上图中的“播放”就可以听到音乐了步骤:1、 在tomcat中新建一个web项目,用作网络音乐网站在/apache-tomcat-6.0.29/webapps/下新建myWebSite目录在myWebSite下新建WEB-INF文件在WEB-INF下新建web.xml文件,内容与一般的web程序中类似在myWebSite下新建index.html文件,并拷如几个mp3文件index.html内容见附录,运行tomcat,访问应
3、用,出现2图则成功2、 在eclipse上新建一个android项目,用于实现播放网站上的音乐由于涉及到网络,在AndroidManifest.xml文件添加internet访问权限在main.xml文件中添加一个WebView控件编写一个用于播放音乐的类,该类将作为javascript接口在activity中获取WebView并设置属性运行程序.核心代码:1、 播放音乐if(mediaPlayer.isPlaying()mediaPlayer.reset();mediaPlayer.setDataSource(url);/url为函数传入的音乐地址mediaPlayer.prepare();
4、mediaPlayer.start(); 2、 WebView属性设置this.webView = (WebView) this.findViewById(R.id.webView); this.webView.getSettings().setJavaScriptEnabled(true); this.webView.getSettings().setAppCacheEnabled(false); this.webView.getSettings().setSupportZoom(true); this.webView.getSettings().setBuiltInZoomControls
5、(true); this.webView.addJavascriptInterface(new PlayMusicInterface(this), musicplayer);this.webView.loadUrl(7:8080/myWebSite/index.html);3、 Html中的table技巧原本打算用标签来实现音乐地址的获取,尝试一下不行,于是用到了的title属性,这个属性原本用于鼠标移到上面显示的内容的,正好也可以用于存储音乐地址。 function play(obj)/这里的musicplayer对象就是android程序中定义的javasc
6、ript接口 musicplayer.playMusic(obj.getAttribute(title); 附录Index.html body line-height: 1.6em; #hor-minimalist-a font-family: Lucida Sans Unicode, Lucida Grande, Sans-Serif; font-size: 12px; background: #fff; margin: 45px; width: 400px; border-collapse: collapse; text-align: left; #hor-minimalist-a th
7、font-size: 14px; font-weight: normal; color: #039; padding: 8px 8px; border-bottom: 2px solid #6678b1; #hor-minimalist-a td color: #669; padding: 9px 8px 0px 8px; #hor-minimalist-a tbody tr:hover td color: #009; var count = 0; function play(obj) musicplayer.playMusic(obj.getAttribute(title); 歌手 歌曲 播
8、放 班得瑞 迷雾水珠 播放 班得瑞 龙的心 播放 班得瑞 其他 播放 班得瑞 遗失的爱 播放 班得瑞 迷雾水珠 播放 Main.xml AndroidManifest.xml OnlineMusic.javapackage .hfut.activity;import android.app.Activity;import .Uri;import android.os.Bundle;import android.webkit.WebView;import android.widget.MediaController;import android.widget.V
9、ideoView;public class OnlineMusic extends Activity private WebView webView = null; /* Called when the activity is first created. */ Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); getWidget(); public void getWidget() this.we
10、bView = (WebView) this.findViewById(R.id.webView); this.webView.getSettings().setJavaScriptEnabled(true); this.webView.getSettings().setAppCacheEnabled(false); this.webView.getSettings().setSupportZoom(true); this.webView.getSettings().setBuiltInZoomControls(true); this.webView.addJavascriptInterfac
11、e(new PlayMusicInterface(this), musicplayer); this.webView.loadUrl(7:8080/myWebSite/index.html); PlayMusicInterface.javapackage .hfut.activity;import java.io.IOException;import android.content.Context;import android.media.MediaPlayer;import .Uri;import android.webkit
12、.URLUtil;import android.widget.Toast;import android.widget.VideoView;public class PlayMusicInterface private Context context = null;private MediaPlayer mediaPlayer = null;public PlayMusicInterface( Context context)this.context = context;mediaPlayer = new MediaPlayer();public void stopMusic()if(mediaPlayer.isPlaying()mediaPlayer.stop();public void playMusic(String url)if(mediaPlayer.isPlaying()mediaPlayer.reset();try mediaPlayer.setDataSource(url);mediaP
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东省揭阳市重点名校2025年高三下学期第二次段考物理试题含解析
- 广东省江门市江海区五校2024-2025学年初三第一次检测试题英语试题(快班)含答案
- 广东省惠州市惠城区达标名校2025年学业水平考试英语试题模拟卷(五)含答案
- 广东省广州市钟村中学2025年下学期初三期中考试数学试题含解析
- 生产经营负责人安全培训考试题及参考答案(达标题)
- 工厂安全培训考试题附参考答案【夺分金卷】
- 安全管理员安全培训考试题(真题汇编)
- 项目部安全培训考试题【各地真题】
- 全国高考地理试题汇编(10月)J2农业地域
- 高考数学 热点题型和提分秘籍 专题16 定积分与微积分基本定理 理(含解析)
- 2024年人教版小学语文一年级上册教学计划
- 一生何求:陈思思、秦菲雪的完整小说阅读
- 电梯行业安全培训课程
- 医疗器械工作人员的综合培训方案
- 物联网应用技术专业介绍
- 科室质量管理手册-医技医辅科室(药剂科、放射科、功能影像科、检验科)
- 译林小学英语四年级上册教案(教学设计)
- 《舞台美术设计》课件
- 《一生中最爱》谐音歌词
- 东方财富杯知识比拼题库
- 倾听儿童:以儿童的哲学构建儿童的活动
评论
0/150
提交评论