(1)将系统分成几个相对独立的模块。
(2)分层的模块化程序设计思想,整个系统采用模块化结构设计。作为应用程序有较强的可操作性和扩展性。
(3)合理的数据流设计,在应用系统设计中,相对独立的模块间以数据流相互连接,使各模块间的耦合性较低,方便系统运行,提高系统安全性。
4.2 系统功能结构图
根据上述需求分析,本Android版音乐播放器可分为一下几个模块:
播放器基本功能如图4-1所示:
图4-1 播放器基本功能图
播放清单列表如图4-2所示:
图4-2 播放器清单列表图
从图中看出播放列表功能的参与者依然是用户,这表达了客户体验的要求,当用户选中列表中的一首歌时,会有一个列表选项,具备播放、移除功能。
4.3 开发语言简介
4.3.1 Android简介
Android一词的本义指"机器人",同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。
Android是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为"安致"),后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为Google电话或gPhone。大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Google开始发表自家品牌手机电话的Nexus One。目前最新SDK版本为Android 4.0.3。
4.3.2 Android Features特性
Android系统有如下的几大特性:
* 应用程序框架 支持组件的重用与替换
* Dalvik虚拟机 专门为移动设备做了优化
* 内部集成浏览器 该浏览器基于开源的WebKit引擎
* 优化的图形库 包括2D和3D图形库,3D图形库基于OpenGL ES
* SQLite 用作结构化的数据存储
* 多媒体支持 包括常见的音频、视频和静态印象文件格式(如 MPEG4、H.264、MP3、AAC、 AMR、JPG、PNG、 GIF)
* GSM电话(依赖于硬件)
* 蓝牙Bluetooth,EDGE,3G and WiFi (依赖于硬件)
* 照相机,GPS,指南针,和加速度计 (依赖于硬件)
* 丰富的开发环境 包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件
4.3.3 Android基本框架(Android Architecture)
Android平台的基本框架如图1-1所示。
图1-1 Android基本框架图
(1)Applications
Application Android会同一个核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用JAVA编写的。
(2)Application FrameWork
开发者完全可以访问核心应用程序所使用的API框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组建可以被用户替换。
所有的应用程序都由一系列的服务和系统组成,包括:
* 可扩展的视图(Views)可以用来建应用程序,包括列表(lists),网格(grids),文本框(text boxes),按钮(buttons),甚至包括一个可嵌入的
web浏览器
* 内容管理器(Content Providers)使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。
* 资源管理器(