1、基于Android的多媒体播放器课程设计报告(2023-01-02 22:46:52) 转载标签: android多媒体播放器嵌入式课程设计报告it分类: 我的编程之路 附源码。希望此文能帮助到一些新手。也希望更多的人在网络上分享自己的学习成果。互相交流,扣扣:70876398完整版: :/vdisk.weibo /s/z45_CkcauTkNJ1、开发环境Android 是一种基于 Linux V2.6 内核的综合操作环境。最初,Android 的部署目标是移动 领域,包括智能 和更廉价的翻盖 。Android 全面的计算效劳和丰富的功能支持完全有能力扩展到移动 市场以外。Android 也
2、可以用于其他的平台和应用程序。下面搭建Android的开发环境。1.1 JDK安装1、首先把所有要安装文件放在Android_software文件夹中;2、安装jdk-6u10-rc2-bin-b32-windows-i586-p-12_sep_2023文件;3、配置环境变量:1新建一个用户变量,变量名是JAVA_HOME,变量值为:JDK的安装路径;2查看系统变量Path,如果有显示路径加bin,没有那么加%JAVA_HOME%bin;3查看class,如果有显示路径加lib,没有那么加%JAVA_HOME%lib;4、解压eclipse-jee-juno-win32文件,运行eclipse
3、.exe,在workspace launcher窗口中,设置项目保存路径; 1.2 Android SDK安装以及系统设置在eclipse菜单栏的window子菜单下点击perferences,选择android,在右边的对话框中选择按钮Browse,找到SDK源文件,自动出来SDK包含的Android版本,点击Apply按钮,完成安装;在用户变量里面,新建一个JAVA_SDK变量,值设置的值为SDK安装的路径;在系统变量里面参加%JAVA_HOME%bin,%JAVA_SDK%tools,%JAVA_SDK%platform-tools。 图1.设置环境变量1.3 Eclipse安装以及AD
4、T工具的安装ADT插件的安装:1解压ADT文件;2翻开eclipse菜单上help 子目录下的Install new software;3在弹出的Install窗口中点击Add,在弹出的窗口中,name:ADT Location:点击location按钮找到解压的ADT源文件;4安装成功后,重新启动eclipse; 1.4 模拟器的配置1、运行eclipse,在window子菜单下点击AVD Manager开始配置模拟器;2、在Android Virtual Device Manager 下点击NEW,开始创立模拟器;3、在create new Android Virtual Manager窗
5、口中,输入模拟器的名称、版本、 存储卡大小, 屏幕的分辨率,输入完后,点击Create AVD,创立完成;4、在Android Virtual Device Manager窗口中,选中模拟器后,点击start,启 动模拟器。 图2 启动模拟器2、功能说明2.1 软件结构与布局设计布局框架分为三个局部:图形菜单主界面menu_main.xml ,对应类文件MediaPlay.java 媒体功能实现界面menu_main.xml menuForMain.java媒体列表界面 mylist.xml以及listview.xml样式布局listtype.xml MediaList.java 逻辑架构如下
6、: 2.2图像菜单功能 主要控件及功能Gallery MyGallery:用于显示图形菜单,双击图片进入相应的功能界面TextView menuTv:用于显示菜单项选择项信息 使用说明:1、双击MyGallery中装载的一组图片屏幕底部中的其中任何一张图片进入相应的功能面 板2、通过在MyGallery滑动来到达更改菜单项选择项的功能3、menuTv会实时显示当前选中的菜单项的详细说明 2.3 音频文件播放 主要控件及功能ImageButton ibtnPlayAndPuase 开始/暂停ImageButton ibtnStop 停止ImageButton ibtnLast, 上一曲Image
7、Button ibtnNext; 下一曲 SeekBar MySeekBar; 进度条TextView MytvScreen;信息显示TextView tbTimer ;用于显示当前播放时间进度 使用说明:1、当进入音乐播放界面时,后台读取保存在本地的音乐列表文件,假设不存在列表文件那么自动扫描/sdcard/Music/目录下音频文件2、播放和暂停键复用,当第一次点击播放按钮,再次点击那么为暂停,再次点击那么继续之前的位置播放;停止按钮那么是将当前播放进度设置为0并暂停播放;上一曲、下一曲按钮那么实现歌曲切换功能3、进度条和tbTimer控件那么实时显示当前播放音乐的时间进度,MytvScr
8、een会显示当前正在播放歌曲的详细信息 2.4 视频文件播放 主要控件及功能ImageButton ibtnPlayAndPuase 开始/暂停ImageButton ibtnStop 停止ImageButton ibtnLast, 上一曲ImageButton ibtnNext; 下一曲 SeekBar MySeekBar; 进度条 VideoView MyVideoView; 用于播放视频的组件 使用说明:1、当进入视频播放界面时,后台读取保存在本地的视频列表文件,假设不存在列表文件那么自动扫描/sdcard/Video/目录下音频文件2、播放、暂停、上一部、下一步、停止以及进度条、时间显
9、示条皆复用音乐界面的按钮,功能也与其一致,这里不赘述。 2.5 录音 主要控件及功能ImageButton ibtnPlayAndPuase 开始/暂停ImageButton ibtnStop 停止ImageButton ibtnLast, 上一曲ImageButton ibtnNext; 下一曲 SeekBar MySeekBar; 进度条 Button btnRecording; 录音开关 使用说明:1、当进入录音界面时,后台读取保存在本地的视频列表文件,假设不存在列表文件那么自动扫描/sdcard/MyRecords/目录下录音文件2、播放、暂停、上一部、下一步、停止以及进度条、时间显示
10、条皆复用音乐界面的按钮,功能也与其一致,这里不赘述。3、点击开始录音按钮,那么按钮显示为“录音中.,此时播放等按钮无法使用,进度条中间会显示当前的录音时间。在次点击此按钮那么停止录音。此时可点击播放按钮试听刚刚的录音。4、以上所有操作在主显示区域都会有文字描述 3、软件设计与调试3.1软件在虚拟机上调试及分析 3.1.1图形菜单 核心代码:/图片装载 int MenuImages=R.drawable.menu4,R.drawable.menu1,R.drawable.menu2,R.drawable.menu3,R.drawable.menu5; MyGallery.setAdapter(n
11、ew ImageAdapter(this);public class ImageAdapter extends BaseAdapterOverridepublic View getView(int arg0, View arg1, ViewGroup arg2) / TODO Auto-generated method stubImageView i = new ImageView(mContext); i.setImageResource(MenuImagesarg0); i.setAdjustViewBounds(true); i.setLayoutParams(new Gallery.L
12、ayoutParams( LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);/ i.setBackgroundResource(R.drawable.e); return i;/页面跳转Overridepublic boolean onDoubleTap(MotionEvent arg0) / TODO Auto-generated method stubIntent MyIntent=new Intent();MyIntent.setClass(menuForMain.this,MediaPlay.class);Bundle MyBu
13、ndle=new Bundle();MyBundle.putInt(name, MyGallery.getSelectedItemPosition();MyIntent.putExtras(MyBundle);startActivity(MyIntent);return false; 3.1.2音乐播放 播放: MyMediaPlayer.setDataSource(MusicList.get(Mediasp);MyMediaPlayer.prepare();MyMediaPlayer.start(); /播放MyMediaPlayer.pause();/暂停MyMediaPlayer.pau
14、se();MyMediaPlayer.seekTo(0);/停止(为了能使点击播放按钮能在此播放,这里不调用MyMediaPlayer.stop()方法) 3.1.3视频播放器 MyVideoView.setVideoURI(Uri.parse(VideoList.get(Mediasp);/设置视频源MyVideoView.start();/播放 MyMediaPlayer.pause();/暂停MyVideoView.pause();MyVideoView.seekTo(0);/停止 3.1.4录音 /播放new DateFormat();file=new File(/sdcard/MyRecords/+bear+DateFormat.format(yyyyMMdd_hhmmss,Calendar.getInstance(Locale.CHINA)+.amr);File destDir = new File(/sdcard/MyRecords/);if (!destDir.exists()de