




已阅读5页,还剩24页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 1项目背景 在研究了各种市场上流行的手机播放器 了解它们各自的插件及编码方式 还有各种播放器播放的特别格式文件 分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点 编写出功能实用 使用方便快捷的播放器 目前已经实现的功能有能播放常见音频文件的功能 如MP3 WAV 等 拥有播放菜单 能选择播放清单 具备一般播放器的功能 如快进 快退 音量调节等 播放模式也比较完善 有单曲 顺序 循环 随机播放等模式 1 2编写目的 现今社会生活紧张 而欣赏音乐是其中最好的舒缓压力的方式之一 本项目的目的是开发一个可以播放主流音乐文件格式的播放器 本设计的实现的这主要功能是播放Mp3格式的音乐文件 并且能够控制播放 暂停 停止 上一曲 下一曲 音量调节 视觉外观 播放列表和歌曲文件的管理操作等多种播放控制功能 界面简明 操作简单 2 1功能需求 用例图分析 2 1功能需求 用例图分析 根据项目的目标 我们可获得项目系统的基本需求 以下从不同角度来描述系统的需求 并且使用用例图来描述 系统的功能需求 我们分成四部分来概括 即播放器的基本控制需要 播放列表管理需求 播放器友好性需求和播放器扩展卡需求 以下分别描述 2 1 1播放器的基本控制需求 2 1 2播放清单列表管理需求 当用户选中列表中某一项歌曲 就有的需求 2 1 3播放友好性需求 2 1 4播放器扩展卡需求 2 1 5功能需求 时序图 分析 Android数据库设计3 1数据库及字段属性设计 表包括Music List Music Music2主要是保存歌曲名字 路径字段说明 Id歌曲id号Name歌曲名字Path歌曲路径 3 2数据库连接 Android中自带SQLite数据库 这是一个十分小型的数据库 这样正适合Android这种移动平台使用 Android数据库存储的位置data data databases 目录下Android是利用SQLiteOpenHelper数据库帮助类来进行对数据库的创建和操作 程序中数据库类为DataBaseextendsSQLiteOpenHelper 继承关系 3 2 1创建数据库 publicclassDataBaseextendsSQLiteOpenHelper 构造方法 创建数据库和表 publicDataBase Contextcontext super context DATABASE NAME null VERSION publicvoidonCreate SQLiteDatabasedb try catch Exceptione publicvoidonUpgrade SQLiteDatabasedb intoldVersion intnewVersion onCreate db 3 2 2操作数据库 Android对数据库的操作主要有插入 删除 更新 查询操作 在进行任何操作时都必须指定一个关键字 才能对相应的表进行数据操作 这里我们指定的是path关键字 3 2 3数据查询和显示 程序是利用Cursor游标类指向数据表中的某一项 然后进行查询数据 数据显示使用的是专门的数据库适配器SimpleCursorAdapter Android项目MusicPlayer介绍 Android的四大基本组件 Activity 活动 Service 服务 BroadcastReceiver 广播 ContentProvider 内容提供者 各组件之间要进行切换需要一个意图或企图Intent类 通过启动StartIntent 方法来使各组件进行Activity的跳转 通过启动StartService是 方法来启动服务 通过stopServices 方法来停止服务 Android的五大布局方式 LinearLayout 线性布局 FrameLayout 帧布局 TableLayout 表格布局 AbsoluteLayout 绝对布局 RelativeLayout 相对布局 五种布局方式可以相互嵌套 Android各种漂亮的界面都是通过嵌套布局而实现的 Android的线程 以及线程之间通信的中介 Handler类Android数据库 在第三部分已经介绍过了 这里不再介绍Android配置文件 AndroidManifest Xml及res资源文件中各种属性布局方式引用的资源等Android系统将插件ADT集成到了Eclipse工具上 因此 一个Android程序启动后 系统会启动一个模拟器 Emulator 图4 7 该模拟器是一款手机板的样式 拥有手机硬件的基本操作 我们也可以将右边的键盘通过代码属性设置将其隐藏 界面的大小可自由设定 4 4 2Android工程程序结构 音乐播放器代码结构 5 播放器系统功能详细设计5 1音乐播放器主界面功能实现 播放器主界面 5 1 2播放界面音轨的实现 publicvoidhandleMessage Messagemsg if mp null 拖动进度条可以实现快进和快退的功能实现代码如下 seekbar setOnSeekBarChangeListener newOnSeekBarChangeListener 拖动进度条事件响应 publicvoidonProgressChanged SeekBarseekBar intprogress publicvoidonStartTrackingTouch SeekBarseekBar publicvoidonStopTrackingTouch SeekBarseekBar 5 1 2播放器播放 暂停 停止等功能 android的媒体播放原理 android源程序已经为我们封装好了一个接口类 叫MediaPlayer 该接口在执行行需要一个数据源 通过如下四个步骤 第一步 MediaPlayer reset 复位操作 为以后的媒体准备播放作准备 第二步 传入歌曲数据源 这里也是一个数据流MediaPlayer setDataSource Stringpath 参数需要传一个路径 该接口类在收到路径后将其转化为数据源 第三步 准备播放数据源 调用方法MediaPlayer Prepare 第四步 MediaPlayer Start 播放数据源 该数据源播放后 不再与程序有关 需要用MediaPlayer Stop 方法让其停止或MediaPlayer Start 让其启动 5 1 3设置播放模式功能 界面效果如下图 界面实现如下代码所示 Menu菜单设置 publicbooleanonCreateOptionsMenu Menumenu menu add 0 0 1 关于 menu add 0 1 1 退出 menu add 1 2 1 顺序循环 播放模式功能代码结构实现如下 具体见附录 publicvoidsingle play publicvoidqueue play 5 2播放列表功能 界面列表事件响应如下 protectedvoidonListItemClick ListViewl Viewv intposition longid finalMyDialogmydialog newMyDialog FileListActivity this 操作选项 mydialog show mydialog listView setOnItemClickListener newOnItemClickListener publicvoidonItemClick AdapterViewarg0 Viewarg1 intarg2 longarg3 mydialog cancel 5 3对话框功能 具体实现该对话框的代码结构如下 publicclassMyDialogextendsDialog OverrideprotectedvoidonCreate BundlesavedInstanceState menuList CreateMenu CreateListView menuList publicListCreateMenu publicvoidCreateListView ListmenuList 5 4数据存储方式 SQLiteDatabase类 SQLiteOpenHelper类 5 5AndroidService 本程序使用了Service功能实现播放 当Activity被销毁后 后台任然在进行音乐的播放 并且点击暂停后再点击退出 可以实现Service的摧毁 代码结构实现如下 publicclassPlayerServiceextendsService OverridepublicIBinderonBind Intentintent TODOAuto g
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教育行业投资趋势与风险评估分析
- 上消化道出血患者护理
- 调薪制度面试题及答案
- 发酵工程及应用
- 2024-2025学年山西大学附属中学中九年级12月月考历史试卷
- ICU患者的心理护理
- 2025-2030年中国新材料产业园区市场发展模式及投资机会研究报告
- 2025-2030年中国废旧汽车回收行业发展方向调查研究及投资价值研究报告
- 2025-2030年中国婴幼儿辅食行业市场竞争状况及运行策略研究报告
- 文明饲养宠物倡议书合集8篇
- GB/T 23703.2-2010知识管理第2部分:术语
- 采购合同英文版
- 国开经济学(本)1-14章练习试题及答案
- 二0二三年度六年级上册Module1《多维阅读》第八级DifferentPlants教学设计
- 中国古代文学史(二)正式课件
- 颈椎病护理查房 (3)PPT
- 私教工作表格健康问卷
- 国外教材精选 课后习题答案量子力学概论 格里菲斯 习题解
- 稀土产业园建设项目建议书(参考范文)
- 少先队员入队好人好事记录表
- 土木工程施工课程设计土木工程施工课程设计
评论
0/150
提交评论