APP下载

基于Android的影音播放器的设计与开发

2018-08-16苏兵

电脑与电信 2018年6期
关键词:播放器影音控件

苏兵

(广州华夏职业学院,广东 广州 510935)

1 绪论

随着移动网络技术的飞速发展和移动智能终端软件和硬件的不断更新换代,人们越来越多地使用移动终端来享受移动网络提供的各种各样的信息服务。近年来,Android移动终端的普及和流媒体技术向移动终端的延伸,极大地促进了移动终端视频应用的发展,使人们随时随地通过移动网络观看视频和上传视频。本系统选用Eclipse开发移动应用APP,分别从应用的界面设计和功能设计两个方面进行陈述;而服务器部署了Tomcat,将设计好的流媒体视频部署到Tomcat;移动端与服务器端之间的通讯采用HTTP技术。

2 影音播放器的设计

影音播放器的设计包括:系统框架设计、移动端的界面设计和功能设计、服务器的设计。

2.1 系统框架设计

影音播放器的框架设计分为基于Android的移动端的App设计和基于Tomcat的服务器端的设计,它们之间的通讯采用HTTP1.1,如图1所示。

本系统选用Eclipse开发环境逐步完成系统各个部分的实现,重点对用户界面的实现、视频播放模块的实现、播放进度控制的实现、基于Tomcat技术的Web服务器和流媒体服务器的搭建和部署进行分析。

2.2 界面设计和功能设计

首页和更多主要为影片分类和列表,列表部分使用了GridView。首页和更多的功能主要是展示影片信息,首先通过HttpClient请求到网络资源,然后通过Json解析后使用Adapter装载数据。

播放界面主要由VideoView和ProgressBar两个控件组成。外层为RelativeLayout,使ProgressBar可以在VideoView控件上层并居中显示。播放功能使用VideoView控件,该控件内部为MediaPlayer和SurfaceView控件的封装,使用该控件的主要流程为初始化控件,装入url,设置监听。首页、更多和播放的设计如图1所示。

图1 播放器的框架设计

图2 播放器的界面设计和功能设计

2.3 服务器端的设计

服务器端采用Tomcat进行搭建,用于部署使用JSP建好的网站,在网站内使用Json来存储和表示数据。

3 影音播放器的开发

3.1 界面开发和功能开发

3.1.1 界面开发

主界面框架为标题、底部导航加Fragment,Fragment是自定义加载到LinearLayout上,所以此处的LinearLayout需要加ID,其大纲结构图如图3所示。

图3 主界面开发大纲结构

首页Fragment开发主要包括视频的分类展示,每一个分类下都是使用GridView,并设定个数。单击更多按钮会跳转到对应分类下的界面。单击GridView下的每一个item返回服务器请求数据,播放视频,其大纲结构如图4所示。

图4 首页界面开发大纲结构

播放界面的开发使用了VideoView控件完成视频的播放,加载视频时在VideoView上放置ProgressBar和TextView提示用户,其大纲结构如图5所示。

图5 播放界面开发大纲结构

其它界面的开发类似,在此不再陈述。

3.1.2 功能开发

(1)主界面功能开发

首先,声明两个子布局和底部导航的四个控件以及标题。

其次,初始化界面并将界面的上下文存入GloableParams类中,以便其他页面的调用。调用初始化控件和监听的方法。

然后,初始化两个子布局,将homeFragment加入主界面。

接着,设置底部导航图上的监听。

最后,对其它所需的功能进行实现即可。

(2)首页功能开发

首先,主界面默认加载的是homeFragment,即首页。在onCreateView方法中进行控件和适配器的绑定。

其次,TextView控件更多的单击监听。单击后得到服务器请求的URI放入Bundle对象中,在加载更多页面时传递过去。

然后,得到服务器请求的URI调用NetWorkTask().executeProxy异步方法请求服务器。将监听的上下文赋值给params.listener,传入调用的方法中。

接着,进行网络判断,如果当前网络不正常,调用Prom t-Manager.showNoNetWork(mContext);检查是否有网络。若网络状态良好,则调用super.execute(params)进行服务器请求。此过程中弹出进度条对话框提示资源加载中。

在此方法中,将之前设置的上下文赋给this.onResultListener就可以在当前页面调用首页面。

最后,加载其它的所需资源,即可实现首页的信息显示功能。更多界面的功能开发与首页类似。

(3)视频播放界面功能开发

首先,单击首页上的任务item会进入视频播放界面,该界面使用videoView播放视频,videoView内部对Mediaplayer和SurfaceView进行了封装。

3.2 服务器端的实现

采用JSP技术新建一个JSP网站,加载相应的图片、视频和Json文档等等,测试成功后,将该网站部署到Tomcat服务器上。

3.2.1 安装JDK和Tomcat

(1)安装JDK:直接运行jdk-7-w indows-i586.exe可执行程序,默认安装即可。

备注:路径可以其他盘符,不建议路径包含中文名及特殊符号。

(2)安装Tomcat:直接解压缩下载文件“apache-tomcat-7.0.33-w indows-x86.zip”到C盘下。安装路径建议修改为:c: omcat。

3.2.2 配置JDK环境变量和测试JDK

(1)新建变量名:JAVA_HOME,变量值:C:Program FilesJavajdk1.7.0

(2)打开PATH和添加变量值:%JAVA_HOME%in;%JAVA_HOME%jrein

(3)新 建 变 量 名 :CLASSPATH,变 量 值 :.;%JAVA_HOME%libdt.jar;%JAVA_HOME%lib ools.jar

(4)测试JDK:在CMD命令下输入javac,java,javadoc命令,出现图6界面,表示安装成功。

图6 成功测试JDK

3.2.3 配置Tomcat环境变量、启动Tomcat和测试Tomcat

(1)新建变量名:CATALINA_BASE,变量值:C: omcat

(2)新建变量名:CATALINA_HOME,变量值:C: omcat

(3)打开PATH,添加变量值:%CATALINA_HOME%lib;%CATALINA_HOME%in

(4)启动Tomcat服务的两种方法:方法一:在CMD命令下输入命令:startup,出现图7对话框,表明服务启动成功;方法二:右键点击桌面上的“我的电脑”->“管理”->“服务和应用程序”->“服务”,找到“Apache Tomcat”服务,右键点击该服务,选择“属性”,将“启动类型”由“手动”改成“自动”。

(5)测试Tom cat:打开浏览器,在地址栏中输入http://localhost:8080回车,如果看到Tomcat自带的一个JSP页面,说明JDK和Tomcat已搭建成功。

图7 CMD命令下成功测试JDK

4 影音播放器的测试

该影音播放器是分别采用Eclipse模拟器和真机进行测试,经过多次的界面和功能修改,并完善Tomcat服务器,完成了视频播放器的基本框架与图片的缓存加载,实现了基本视频格式文件的播放功能,如图8所示。

图8 影音播放器的测试效果图

5 结束语

本文的实现分为服务器和客户端两部分:

(1)服务器部分主要为含有URI等信息的Json数据、图片信息和不同格式的视频资源。

(2)客户端主要由fragment页面框架和视频播放两部分组成。

页面框架部分包括首页和更多:

(1)首页上的图片资源为直接从服务器获取,需要对图片进行一定的处理。

(2)更多页面上的图片资源是直接请求的百度服务器,每次请求获得一定的图片并显示在界面上。因为图片量较大必须对缓存进行一定的处理,否则就会产生OOM(Out-Of-Memory)。

猜你喜欢

播放器影音控件
Walkman诞生40周年 索尼适时发布NW-ZX500和NW-A100系列播放器
基于STM32的MP3播放器设计
Moon ACE播放器/放大器一体机
关于.net控件数组的探讨
影音
影音
播放器背板注塑模具设计
影音
就这样玩会VBA中常见的自定义控件
影音月历