《毕业论文基于Android手机平台的音乐播放器应用程序的设计与实现19032.doc》由会员分享,可在线阅读,更多相关《毕业论文基于Android手机平台的音乐播放器应用程序的设计与实现19032.doc(53页珍藏版)》请在三一办公上搜索。
1、基于Android手机平台的音乐播放器目 录第一章 引 言- 1 -1.1 项目背景- 1 -1.2 编写目的- 2 -第二章 系统需求分析- 3 -2.1 功能需求(用例图分析)- 3 -2.1.1 播放器的基本控制需求- 3 -2.1.2 播放清单列表管理需求- 5 -2.1.3 播放友好性需求- 7 -2.1.4 播放器扩展卡需求- 8 -2.1.5 功能需求(时序图)分析- 9 -2.2 系统结构图和流程图- 10 -2.3 系统界面需求- 11 -2.4 系统性能需求- 12 -2.5 运行环境需求- 12 -第三章 Android数据库设计- 13 -3.1 数据库及字段属性设计-
2、 13 -3.1.1 字段设计(表、图)- 13 -3.1.2 音乐播放器E-R图- 15 -3.2 数据库连接- 15 -3.2.1 创建数据库- 15 -3.2.2 操作数据库- 16 -3.2.3 数据显示- 17 -第四章 Android项目介绍- 18 -4.1 什么是Android?- 18 -4.1.1 Android简介- 18 -4.1.2 Android Features特性- 18 -4.1.3 Android基本框架(Android Architecture)- 19 -4.1.4 Android系统的四大组件- 22 -4.2 搭建Android开发环境- 23 -4
3、.3 Android常用工具的使用- 25 -4.3.1 命令行的使用- 25 -4.3.2 Dalvik Debug Monitor Service (DDMS)的使用- 26 -4.4 Android 音乐播放器的工程- 26 -4.4.1 Android项目- 26 -4.4.2 Android工程程序结构- 27 -4.4.3 AndroidManifest.xml文件- 29 -第五章 播放器系统功能详细设计- 31 -5.1音乐播放器主界面功能实现- 31 -5.1.1 播放器主界面- 31 -5.1.2 播放界面音轨的实现- 32 -5.1.3 播放器播放、暂停、停止等功能- 3
4、5 -5.2 播放列表功能- 36 -5.3 菜单功能- 38 -5.3.1 菜单界面- 38 -5.3.2 菜单功能实现- 39 -5.4 播放设置界面- 41 -5.4.1 界面实现- 41 -5.4.2 歌词显示实现- 42 -5.5 手机扩展卡的访问- 44 -5.5.1 文件浏览器界面- 45 -5.5.2 文件浏览器功能实现- 46 -5.6 数据存储方式- 47 -5.6.1 SharedPreferences- 47 -5.6.2 File存储方式- 48 -5.6.3 SQLiteDatabase数据库- 48 -第六章 结 论- 49 -摘 要 当今社会的生活节奏越来越快+
5、Android系统上一的款音乐播放器应用程序的设计与实现进行讨论。Android是一个开源的系统,它底层是基于Linux的操作系统,本论文的音乐播放器采用了Android开源系统技术,利用Java语言和Eclipse编辑工具对播放器进行编写。同时给出了详细的系统设计过程、部分界面图及主要功能运行流程图,本文还对高度过程中遇到的问题和解决方法进行了详细的讨论,该音乐播放器集播放、暂停、停止、上一首、下一首、音量调节、歌词显示等功能于一体,性能良好,在Android系统中能独立运行。该播放器还拥有对手机文件浏览器的访问功能、歌曲播放模式、以及歌词开闭状态的友好设置.MP3的全名是MPEG Audi
6、o Layer-3,是一种声音文件的压缩格式,由于本播放器只限于应用层程序的探讨,所以对具体的压缩算法不作深究。关键词:Android ; 开源系统 ; linux ; 音乐播放器ABSTRACTThe pace of life in todays society, with more advanced hardware mobile devices for mobile devices, people more and more is also high, the requirements from the previous pursuit to pursue the visual tech
7、nology, therefore, also gradually improve the system requirements, the paper mainly is to take on a music player from system design and realization of the application is discussed. Take the system is an open source, it is based on the operating system, use the Linux music player of the Android open-
8、source system technology, using the Java language and editing tools for players to Eclipse. Presents the detailed design process, the part of the system and the main functions of operation interface diagram of height, this paper also flow process problems and solving methods are discussed in detail,
9、 and the music player episode, pause, stop and a, next, volume adjustment, lyrics display functions, such as performance is good, can operate independently in the Android system. This player has access to the file browser phone functions, songs and played pattern, open and close condition of friendl
10、y words. MP3 Audio MPEG Layer - name is 3, is a kind of sound files compressed format, because the players to explore, so the application procedure for specific compression algorithm not probeKeyWords:Android ; Open source system ; linux ; music player第一章 引 言1.1 项目背景 当今社会的生活节奏越来越快,人们对手机的要求也越来越高,由于手机
11、市场发展迅速,使得手机操作系统也出现了不同各类,现在的市场上主要有三个手机操作系统,Windows mobile,symbian,以及谷歌的Android操作系统,其中占有开放源代码优势的Android系统有最大的发展前景。那么能否在手机上拥有自己编写的个性音乐播放器呢?能的,谷歌Android系统就能做到。本文的音乐播放器就是基于谷歌Android手机平台的播放器。 Android:是谷歌于2007年公布的开放式源代码手机系统,它的开放性就优于其它封闭式的手机系统,因此,任何人都可能根据自己的喜好将手机系统中的所有功能重新编写。这使得越来越多的人关注这个操作系统。本次作品音乐播放器就是基于A
12、ndroid平台的。 随着计算机的广泛运用,手机市场的迅速发展,各种音频视频资源也在网上广为流传,这些资源看似平常,但已经渐渐成为人们生活中必不可少的一部分了。于是各种手机播放器也紧跟着发展起来,但是很多播放器一味追求外观花哨,功能庞大,对用户的手机造成了很多资源浪费,比如CPU,内存等的占用率过高,在用户需要多任务操作时,受到了不小的影响,带来了许多不便,而对于大多数普通用户,许多功能用不上,形同虚设。针对以上各种弊端,选择了开发多语种的音频视频播放器,将各种性能优化,继承播放器的常用功能,满足一般用户(如听歌,看电影)的需求,除了能播放常见格式的语音视频文件,高级功能:还能播放RMVB格式
13、的视频文件。此外,还能支持中文、英文等语言界面。 要研究了各种市场上流行的手机播放器,了解它们各自的插件及编码方式,还有各种播放器播放的特别格式文件,分析各种编码的优缺点以及各种播放器本身存在的缺陷和特点,编写出功能实用,使用方便快捷的播放器。目前已经实现的功能有能播放常见音频文件的功能,如MP3,WAV,等,拥有播放菜单,能选择播放清单,具备一般播放器的功能,如快进,快退,音量调节等。播放模式也比较完善,有单曲,顺序,循环,随机播放等模式。1.2 编写目的 现今社会生活紧张,而欣赏音乐是其中最好的舒缓压力的方式之一,本项目的目的是开发一个可以播放主流音乐文件格式的播放器,本设计的实现的这主要
14、功能是播放Mp3,Wav多种格式的音乐文件,并且能够控制播放,暂停,停止,上一曲,下一曲,音量调节,视觉外观,播放列表和歌曲文件的管理操作等多种播放控制功能,界面简明,操作简单。 本项目是一款基于Android手机平台的音乐播放器,使Android手机拥有个性的多媒体播放器,使手机显得更生动灵活化,与人们更为接近,让手机主人随时随地处于音乐视频的旋律之中。使人们的生活更加多样化。也使设计者更加熟练Android的技术和其它在市场上的特点第二章 系统需求分析2.1 功能需求(用例图分析) 根据项目的目标,我们可获得项目系统的基本需求,以下从不同角度来描述系统的需求,并且使用用例图来描述,系统的功
15、能需求,我们分成四部分来概括,即播放器的基本控制需要,播放列表管理需求,播放器友好性需求和播放器扩展卡需求。以下分别描述:2.1.1 播放器的基本控制需求图2.1 播放器基本控制图用例名称:播放参与者:用户目标:使得用户可以播放在播放列表中选中的歌曲前置条件:播放器正在运行基本事件流:1.用户单击“播放”按钮 2.播放器将播放列表中的当前的歌曲用例名称:暂停参与者:用户目标:使得用户可以暂停正在播放的歌曲前置条件:歌曲正在播放且未停止和暂停基本事件流:1.用户单击“暂停”按钮 2.播放器将暂停当前的歌曲用例名称:停止参与者:用户目标:使得用户可以停止正在播放的歌曲前置条件:歌曲正在播放或暂停基
16、本事件流:1.用户单击“停止”按钮 2.播放器将停止当前播放的歌曲用例名称:上一首/下一首参与者:用户目标:使得用户可以听上一首或下一首歌曲前置条件:歌曲正在播放或暂停基本事件流:1.用户单击“上一首或下一首”按钮 2.播放器将播放上一首或下一首歌曲用例名称:播放清单参与者:用户目标:使得用户可以进入播放清单前置条件:程序在运行基本事件流:1.用户单击“清单”按钮 2.播放器进入清单列表2.1.2 播放清单列表管理需求 当用户选中列表中某一项歌曲,就有的需求:图2.2 播放器清单用例名称:播放参与者:用户目标:使得程序播放选中的歌曲前置条件:程序运行在播放菜单选项中基本事件流:1.用户单击“播
17、放”按钮 2.播放器进入播放状态用例名称:详细参与者:用户目标:使得程序显示歌曲详情前置条件:程序运行在播放菜单选项中基本事件流:1.用户单击“详细”按钮 2.显示歌曲详细状态用例名称:增加参与者:用户目标:使得程序进入手机扩展SD卡前置条件:程序运行在播放菜单选项中基本事件流:1.用户单击“增加”按钮 2.播放器进入手机扩展SD卡用例名称:移除/全部移除参与者:用户目标:使选中的歌曲被移除前置条件:程序运行在播放菜单选项中基本事件流:1.用户单击“移除/全部移除”按钮 2.播放器移除选中歌曲/全部移除歌曲用例名称:设定参与者:用户目标:使得程序进入播放器设定状态前置条件:程序运行在播放菜单选
18、项中基本事件流:1.用户单击“设定”按钮 2.播放器进入设定界面2.1.3 播放友好性需求图2.3 播放器设定用例名称:播放模式参与者:用户目标:使得程序进入播放模式设定状态前置条件:程序运行在播放器设定界面中基本事件流:1.用户单击“顺序、随机、单曲”按钮 2.播放器进入选中模式播放状态用例名称:歌词显示参与者:用户目标:使得程序进入播放器歌词设置状态前置条件:程序运行在播设定界面基本事件流:1.用户单击“歌词开关按钮”按钮 2.播放器显示或关闭歌词2.1.4 播放器扩展卡需求图2.4 文件浏览器用例名称:SDcard参与者:用户目标:使得程序进入SDcard目录前置条件:程序运行目录界面基
19、本事件流: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)功能类别子功能子功能播放列表播放列表菜单退出播放从扩展卡寻找歌曲歌曲菜单播放-进入播放界面删除-数据库同步更新重命名-数据库同步更新向上、下移
20、动-数据库同步更新播放界面播放播放歌曲-线程启动-时间更新暂停暂停歌曲-线程暂停-时间暂停停止停止歌曲-线程停止-时间停止上一首播放列表索引变化-寻找上一ID歌曲下一首播放列表索引变化-寻找下一ID歌曲播放界面菜单返回到播放列表返回到主菜单从扩展卡寻找歌曲退出播放器隐藏播放界面主菜单退出程序程序退出进入播放列表显示播放列表表2.1 功能表图2.5.2 系统功能结构图2.3 系统界面需求 播放器界面要求布局合理,颜色舒适,控制按钮友好,为了减少开发工程量,图片素材多数为公司项目素材(图2.6)图2.6 播放器界面 说明:左下角为清单按钮 右下角为程序退出按钮 蓝色条为音轨 2.4 系统性能需求根
21、据Android手机系统要求无响应时间为5秒,所以就有如下性能要求:(1) 当要求歌曲播放时,程序响应时间最长不能超过5秒(2) 当要求歌曲暂停时,程序响应时间最长不能超过5秒(3) 当要求歌曲停止时,程序响应时间最长不能超过5秒(4) 当要求歌曲上/下一首时,程序响应时间最长不能超过5秒(5)当要求进行清单列表时,程序响应时间最长不能超过5秒2.5 运行环境需求操作系统:Android手机基于Linux操作系统支持环境:Android 1.5 - 2.0.1版本开发环境:Eclipse 3.5 ADT 0.95 第三章 Android数据库设计 数据结构组织和数据库文件设计要根据不同用途,使
22、用要求等,来决定数据的整体组织形式等一系列问题。数据库,顾名思义,是存放数据的仓库。只不过这个仓库是在计算机存储设备上,而且数据是按一定的格式存放的。数据库中的数据按一定数据模型组织、描述和存储,具有较小的重复度、较高的数据独立性和易扩展性,并且可以被在一定范围内的各种用户共享。在涉及数据库的软件开发中,需要根据有待解决的问题性质、规模,以及所采用的前端程序创建工具等,做出合适的数据库类型选择3.1 数据库及字段属性设计3.1.1 字段设计(表、图)file_table 主要是保存歌曲名字、类型、路径字段说明:Id 歌曲id号 fileName 歌曲名字 filePath 歌曲路径 sort
23、歌曲类型(表3.1、图3.1.1) Android自带一个MediaStore封闭类 专门来存储媒体信息通过Uri EXTERNAL_CONTENT_URI 来访问SDcard中的歌曲详细信息。存放媒体信息如TITLE(标题)、ARTIST(艺术家)、ALBUM(专辑)、SIZE(大小 )(表3.2、图3.1.2)属性数据类型允许空主键_IdINTEGERNot nullPrimary keyfileNameTEXTNot nullfilePathTEXTsortINTEGER表3.1属性数据类型允许空主键_IDINTEGERNot nullPrimary keyTITLETEXTNot nu
24、llARTISTTEXTALBUMTEXTSIZELONG表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数据
25、库帮助类来进行对数据库的创建和操作。通过Context.getContentResolver()方法直接对数据库进行操作。程序中数据库类为DBHelper extends SQLiteOpenHelper(继承关系),内容提供类DBProvider extends ContentProvider(继承关系)3.2.1 创建数据库 Android 提供了标准的数据库创建方式。继承SQLiteOpenHelper ,实现onCreate 和 onUpgrade 两个方法,有个好处就是便于数据库版本的升级,连接数据库的算法如下:public DBHelper(Context context) / 创
26、建数据库super(context, DATABASE_NAME,null, DATABASE_VERSION);public void onCreate(SQLiteDatabase db) / 创建时调用 db.execSQL(DATABASE_CREATE);public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) / 版本更新时调用db.execSQL(DROP TABLE IF EXISTS File_Table);onCreate(db); Override / 在ContextProvider
27、运行时自动创建数据库 public boolean onCreate() dbOpenHelper= new DBHelper(getContext(); return true;数据库如果创建不成功则抛出FIleNotFoundException异常3.2.2 操作数据库 Android对数据库的操作主要有插入、删除、更新、查询操作,在进行任何操作时都必须指定一个Uri,才能对相应的表进行数据操作。/数据库删除操作Overridepublic int delete(Uri arg0, String arg1, String arg2) SQLiteDatabase db = dbOpenHe
28、lper.getWritableDatabase();try Db.delete(FileColumn.TABLE, arg1, arg2); catch (Exception ex) ex.printStackTrace();return 1;Override/数据库插入操作public Uri insert(Uri uri, ContentValues values) SQLiteDatabase db = dbOpenHelper.getWritableDatabase();long count = 0;try count = db.insert(FileColumn.TABLE, nu
29、ll, values); catch (Exception ex) ex.printStackTrace(); if (count 0) return uri;else return null;/ 数据库更新操作Overridepublic int update(Uri uri, ContentValues values, String selection,String selectionArgs) SQLiteDatabase db = dbOpenHelper.getWritableDatabase();int i = 0;try i = db.update(FileColumn.TABL
30、E, values, selection, null);return i; catch (Exception ex) return 0;3.2.3 数据显示程序是利用Cursor游标类指向数据表中的某一项,然后进行查询数据,用Log日志显示出来Override/数据库查询操作public Cursor query(Uri uri, String projection, String selection,String selectionArgs, String sortOrder) SQLiteDatabase db = dbOpenHelper.getWritableDatabase();/
31、依次参数为:表名,查询字段,where语句,替换,group by(分组),having(分组条件),order by(排序)Cursor cur = db.query(FileColumn.TABLE, projection, selection,selectionArgs, null, null, sortOrder);return cur;第四章 Android项目介绍4.1 什么是Android?4.1.1 Android简介 Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户
32、界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前最好的是Android2.0的摩托罗拉DroidAndroid是基于Linux内核的软件平台和操作系统,早期由Google开发(在华注册商标名为“安致”),后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。低层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之
33、前常被传闻为Google电话或gPhone。大多传闻认为Google开发的是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Google开始发表自家品牌手机电话的Nexus One。目前最新SDK版本为Android 2.14.1.2 Android Features特性 Android系统有如下的几大特性: 应用程序框架 支持组件的重用与替换 Dalvik虚拟机 专门为移动设备做了优化 内部集成浏览器 该浏览器基于开源的WebKit引擎 优化的图形库 包括2D和3D图形库,3D图形库基于OpenGL ES SQLite 用作结构化的数据存储 多媒体支持 包括常见的音频、视频和静态
34、印象文件格式(如 MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF) GSM电话(依赖于硬件) 蓝牙Bluetooth, EDGE, 3G, and WiFi (依赖于硬件) 照相机,GPS,指南针,和加速度计 (依赖于硬件) 丰富的开发环境 包括设备模拟器,调试工具,内存及性能分析图表,和Eclipse集成开发环境插件4.1.3 Android基本框架(Android Architecture)图 4.1 Android Architecture(1) ApplicationsApplication Android会同一个核心应用程序包一起发布,该应用程序
35、包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是用JAVA编写的。(2) Application FrameWork 开发者完全可以访问核心应用程序所使用的API框架。该应用程序架构用来简化组件软件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块(不过得遵循框架的安全性限制)。该应用程序重用机制使得组建可以被用户替换。 所有的应用程序都由一系列的服务和系统组成,包括: 可扩展的视图(Views )可以用来建应用程序,包括列表(lists),网格(grids),文本框(text boxes),按钮(bu
36、ttons),甚至包括一个可嵌入的web浏览器内容管理器(Content Providers )使得应用程序可以访问另一个应用程序的数据(如联系人数据库),或者共享它们自己的数据。资源管理器(Resource Manager)提供非代码资源的访问,如本地字符串,图形,和分层文件(layout files )。通知管理器(Notification Manager)使得应用程序可以在状态栏中显示客户通知信息。活动类管理器(Activity Manager)用来管理应用程序生命周期并提供常用的导航回退功能。(3) Libraries库 Android 包括一个被 Android 系统中各种不同组件所
37、使用的 C/C+ 库集。该库通过 Android 应用程序框架为开发者提供服务。以下是一些主要的核心库:系统 C 库- 一个从 BSD 继承来的标准 C 系统函数库( libc ),专门为基于 embedded linux 的设备定制。 媒体库- 基于 PacketVideo OpenCORE;该库支持录放,并且可以录制许多流行的音频视频格式,还有静态印像文件包括MPEG4, H.264, MP3, AAC, AMR, JPG, PNG。 Surface Manager - 对显示子系统的管理,并且为多个应用程序提供2D和3D图层的无缝融合。 LibWebCore - 一个最新的web浏览器引
38、擎用来支持Android浏览器和一个可嵌入的web视图。 SGL - 一个内置的2D图形引擎 3D libraries - 基于OpenGL ES 1.0 APIs实现;该库可以使用硬件3D加速(如果可用)或者使用高度优化的3D软加速。 FreeType - 位图(bitmap)和向量(vector)字体显示。 SQLite 一个对于所有应用程序可用,功能强劲的轻型关系型数据库引擎。(4) Android RuntimeAndroid 包括了一个核心库,该核心库提供了JAVA编程语言核心库的大多数功能。每一个Android应用程序都在它自己的进程中运行,都拥有一个独立的Dalvik虚拟机实例。
39、Dalvik是针对于同时高效地运行多个VMs来实现的。Dalvik虚拟机执行.dex的Dalvik可执行文件,该格式文件针对最小内存使用做了优化。该虚拟机是基于寄存器的,所有的类都经由JAVA汇编器编译,然后通过SDK中的dx工具转化成.dex格式由虚拟机执行。Dalvik虚拟机依赖于linux的一些功能,比如线程机制和底层内存管理机制。(5) Linux内核Android 的核心系统服务依赖于 Linux 2.6 内核,如安全性,内存管理,进程管理,网络协议栈和驱动模型。 Linux 内核也同时作为硬件和软件堆栈之间的硬件抽象层。未来发展老牌智能手机软件平台制造商Symbian发言人则表示:
40、Google的android只不过是另一个linux,symbian对其它软件与其形成的竞争并不感到担心。除了北美之外,Symbian在其它地区智能手机市场都占有大部分市场份额。与iPhone相似,Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,用户能够在手机上查看电子邮件、搜索网址和观看视频节目等,比iPhone等其他手机更强调搜索功能,界面更强大,可以说是一种融入全部Web应用的单一平台。但其最震撼人心之处在于Android手机系统的开放性和服务免费。Android是一个对第三方软件完全开放的平台,开发者在为其开发程序时拥有更大的自由度,突破了iPhone等只
41、能添加为数不多的固定软件的枷锁;同时与Windows Mobile、Symbian等厂商不同,Android操作系统免费向开发人员提供,这样可节省近三成成本。Android项目目前正在从手机运营商、手机厂商、开发者和消费者那里获得大力支持。谷歌移动平台主管安迪鲁宾(Andy Rubin)表示,与软件开发合作伙伴的密切接触正在进行中。从去年11月开始,谷歌开始向服务提供商、芯片厂商和手机销售商提供Android平台,并组建“开放手机联盟”,其成员超过30家。市场前景Google手机于08年10月22日正式上市,与运营商捆绑的合约价为179美元(约合人民币1200元),现有的T-Mobile用户可
42、以通过网络订购。在10月22日发布当天,将有22个国家和地区可以买到谷歌手机。在11月,将增至27个国家和地区。谷歌手机将只能在T-Mobile网络内使用,将会有SIM卡锁定限制。T-Mobile USA提供了两种流量和短信近曝光的moto sholes(也有人称之为moto tao)将搭载最新的android2.0操作系统包月计划。第一档为25美元,包括不限制的网络流量,以及一定数量的短信;第二档为35美元,包括不限制的网络流量和不限数量的短信。G1支持各种谷歌的服务,包括Gmail、Google Maps、YouTube、Google日历和Google Talk,内置Chrome Lite
43、浏览器。使用这款手机也需要Gmail账号。“我爱死我的G1了!”谷歌联合创始人拉里佩奇(Larry Page)憧憬:“对于我来说,谷歌手机最激动人心的一点就是它的未来。它的功能很强,正如几年前的电脑一样。你可以上网,安装软件。”T-Mobile USA为德国电信旗下移动子公司,运营GSM/HSPA网络,拥有用户近3000万。此次发布的谷歌手机采用高通MSM7201A处理器,支持7.2Mbps下载速率,美国运营商3G网络设定的套餐速率一般可达1Mbps以上。MSM7201A为单芯片、双核,整合硬件加速多媒体功能、支持3D图形,300万像素的摄像功能可以扫描条形码,并且有GPS功能。在美国四大移动
44、运营商中,T-Mobile USA处于相对弱势的地位,不过T-Mobile在欧洲有更为强势的是CDMA EV-DO网络,而T-Mobile USA和苹果iPhone的独家运营商AT&T为GSM/HSPA网络,后者在2005年12月就推出了全球第一个HSDPA商用服务。T-Mobile USA今年5月方才在纽约推出了3G服务,目前已经在奥斯汀、巴尔的摩、波士顿、达拉斯、休斯敦、拉斯维加斯、迈阿密、明尼阿波利斯、凤凰城、波特兰、圣安东尼奥和圣地亚哥等12个城市增加了3G覆盖,公司计划年底前将3G覆盖的城市从目前的13个增加到27个,能够为其超过2/3的用户提供3G服务。4.1.4 Android系
45、统的四大组件在Android系统中,为我们提供了四大基本组件,每个组件是一个视图,但是有些是可见的,有些是不可见的视图,像Activity,ContentProvider是可见的视图,Service和BroadcastReceiver是不可见的,它们只在系统的后台运行。下面分别介绍四大组件:(1)Activity 简介在Android系统中Activity提供可视化的用户界面,一个Android应用通常由多个Activity组成。多个Activity组成了Activity栈(Stack),当前活动的Activity处于栈顶。Activity有自己的生命周期,由Android系统来控制。 (2)Service 简介 顾名思义Service就是运行在后台的一种服务程序,一般很少和用户交互,因此没有可视化界面定义一个Service类比较简单,只要继承Servi