oid手机拥有个性的多媒体播放器,使手机显得更生动灵活化,与人们更为接近,让手机主人随时随地处于音乐视频的旋律之中。使人们的生活更加多样化。也使设计者更加熟练Android的技术和其它在市场上的特点
第二章 系统需求分析
2.1 功能需求(用例图分析)
根据项目的目标,我们可获得项目系统的基本需求,以下从不同角度来描述系统的需求,并且使用用例图来描述,系统的功能需求,我们分成四部分来概括,即播放器的基本控制需要,播放列表管理需求,播放器友好性需求和播放器扩展卡需求。以下分别描述:
2.1.1 播放器的基本控制需求
图2.1 播放器基本控制图
用例名称:播放 参与者:用户 目标:使得用户可以播放在播放列表中选中的歌曲 前置条件:播放器正在运行 基本事件流:1.用户单击"播放"按钮
2.播放器将播放列表中的当前的歌曲
用例名称:暂停 参与者:用户 目标:使得用户可以暂停正在播放的歌曲 前置条件:歌曲正在播放且未停止和暂停 基本事件流:1.用户单击"暂停"按钮
2.播放器将暂停当前的歌曲
用例名称:停止 参与者:用户 目标:使得用户可以停止正在播放的歌曲 前置条件:歌曲正在播放或暂停 基本事件流:1.用户单击"停止"按钮
2.播放器将停止当前播放的歌曲
用例名称:上一首/下一首 参与者:用户 目标:使得用户可以听上一首或下一首歌曲 前置条件:歌曲正在播放或暂停 基本事件流:1.用户单击"上一首或下一首"按钮
2.播放器将播放上一首或下一首歌曲
用例名称:播放清单 参与者:用户 目标:使得用户可以进入播放清单 前置条件:程序在运行 基本事件流:1.用户单击"清单"按钮
2.播放器进入清单列表
2.1.2 播放清单列表管理需求
当用户选中列表中某一项歌曲,就有的需求:
图2.2 播放器清单
用例名称:播放 参与者:用户 目标:使得程序播放选中的歌曲 前置条件:程序运行在播放菜单选项中 基本事件流:1.用户单击"播放"按钮
2.播放器进入播放状态
用例名称:详细 参与者:用户 目标:使得程序显示歌曲详情 前置条件:程序运行在播放菜单选项中 基本事件流:1.用户单击"详细"按钮
2.显示歌曲详细状态
用例名称:增加 参与者:用户 目标:使得程序进入手机扩展SD卡 前置条件:程序运行在播放菜单选项中 基本事件流:1.用户单击"增加"按钮
2.播放器进入手机扩展SD卡
用例名称:移除/全部移除 参与者:用户 目标:使选中的歌曲被移除 前置条件:程序运行在播放菜单选项中 基本事件流:1.用户单击"移除/全部移除"按钮
2.播放器移除选中歌曲/全部移除歌曲
用例名称:设定 参与者:用户 目标:使得程序进入播放器设定状态 前置条件:程序运行在播放菜单选项中 基本事件流:1.用户单击"设定"按钮
2.播放器进入设定界面
2.1.3 播放友好性需求
图2.3 播放器设定
用例名称:播放模式 参与者:用户 目标:使得程序进入播放模式设定状态 前置条件:程序运行在播放器设定界面中 基本事件流:1.用户单击"顺序、随机、单曲"按钮
2.播放器进入选中模式播放状态
用例名称:歌词显示 参与者:用户 目标:使得程序进入播放器歌词设置状态 前置条件:程序运行在播设定界面 基本事件流:1.用户单击"歌词开关按钮"按钮
2.播放器显示或关闭歌词
2.1.4 播放器扩展卡需求
图2.4 文件浏览器
用例名称:SDcard 参与者:用户 目标:使得程序进入SDcard目录 前置条件:程序运行目录界面 基本事件流:1.用户单击"Sdcard"选项
2.程序进入Sdcard目录下
用例名称:System 参与者:用户 目标:使得程序进入System目录 前置条件:程序运行目录界面 基本事件流:1.用户单击"System"选项
2.程序进入System目录下 2.1.5 功能需求(时序图)分析
音乐播放器的时序图分析如(图)
2.2 系统结构图和流程图
(1)音乐播放器的系统流程图(图2.5.1)
图2.5.1 流程图
(2)系统功能表(表2.1)和系统功能结构图(图2.5.2)
功能类别 子功能 子功能
播放列表
播放列表菜单 退出播放 从扩展卡寻找歌曲
歌曲菜单 播放->进入播放界面 删除->数据库同步更新 重命名->数据库同步更新 向上、下移动->数据库同步更新
播放界面
播放 播放歌曲->线程启动->时间更新 暂停 暂停歌曲->线程暂停->时间暂停 停止 停止歌曲->线程停止->时间停止 上一首 播放列表索引变化->寻找上一ID歌曲 下一首 播放列表索引变化->寻找下一ID歌曲
播放界面菜单 返回到播放列表 返回到主菜单 从扩展卡寻找歌曲 退出播放器 隐藏播放界面 主菜单 退出程序 程序退出 进入播放列表 显示播放列表
表2.1 功能表
图2.5.2 系统功能结构图
2.3 系统界面需求
播放器界面要求布局合理,颜色舒适,控制按钮友好,为了减少开发工程量,图片素材多数为公司项目素材(图2.6)
图2.6 播放器界面
说明:左下角为清单按钮 右下角为程序退出按钮
蓝色条为音轨
2.4 系统性能需求
2.5 运行环境需求根据Android手机系统要求无响应时间为5秒,所以就有如下性能要求:
(1) 当要求歌曲播放时,程序响应时间最长不能超过5秒
(2) 当要求歌曲暂停时,程序响应时间最长不能超过5秒
(3) 当要求歌曲停止时,程序响应时间最长不能超过5秒
(4) 当要求歌曲上/下一首时,程序响应时间最长不能超过5秒
(5)当要求进行清单列表时,程序响应时间最长不能超过5秒
第三章 Android数据库设计
数据结构组织和数据库文件设计要根据不同用途,使用要求等,来决定数据的整体组织形式等一系列问题。
数据库,顾名思义,是存放数据的仓库。只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的。数据库中的数据按一定数据模型组织、描述和存储,具有较小的重复度、较高的数据独立性和易扩展性,并且可以被在一定范围内的各种用户共享。在涉及数据库的软件开发中,需要根据有待解决的问题性质、规模,以及所采用的前端程序创建工具等,做出合适的数据库类型选择
3.1 数据库及字段属性设计
3.1.1 字段设计(表、图)
file_table 主要是保存歌曲名字、类型、路径
字段说明:Id 歌曲id号 fileName 歌曲名字 filePath 歌曲路径 sort 歌曲类型(表3.1、图3.1.1)
Android自带一个MediaStore封闭类 专门来存储媒体信息
通过Uri EXTERNAL_CONTENT_URI 来访问SDcard中的歌曲详细信息。
存放媒体信息如TITLE(标题)、ARTIST(艺术家)、ALBUM(专辑)、SIZE(大小 )(表3.2、图3.1.2)
属性 数据类型 允许空 主键 _Id INTEGER Not null Primary key fileName TEXT Not null filePath TEXT sort INTEGER
表3.1
属性 数据类型 允许空 主键 _ID INTEGER Not null Primary key TITLE TEXT Not null ARTIST TEXT ALBUM TEXT SIZE LONG 表3.2
图3.1.1 歌曲列表
图3.1.2 歌曲详细
3.1.2 音乐播放器E-R图
音乐播放器 E-R(实体-联系:entity-relation图)图(图3.1.3)
图3.1.3 E-R图
3.2 数据库连接
这里将介绍如何进行Android数据库连接,Android中自带SQLite数据库,这是一个十分小型的数据库,这样正适合Android这种移动平台使用。
Android数据库存储的位置在data/data/<项目文件夹>/databases/目录下 Android是利用ContentProvider作为内容提供商,SQLiteOpenHelper数据库帮助类来进行对数据库的创建和操作。通过Context.getContentResolver()方法直接对数据库进行操作。程序中数据库类为DBHelper extends SQLiteOpenHelper(继承关系),内容提供类DBProvider extends ContentProvider(继承关系)
3.2.1 创建数据库
Andr
上一篇:
Android平台下基于百度地图API的地图导航设计
下一篇:
计算机网络毕业论文