1、I基于 Android 计算器功能的实现摘要随着移动通信技术和网络技术的迅速发展,手机系统发生了巨大的变化,从进行简单通话功能的非智能手机到现在集上网、聊天、收发邮件、视屏电话会议等各种服务于娱乐为一身的智能手机系统。由 Google 公司牵头众多实力雄厚的软硬件厂商加盟成立了 OMS联盟,并推出的 Android 平台手机系统。作为时代的新生儿,Android 手机操作平台有着得天独厚的优势广阔的发展前景。本文正是基于 Android 平台开发的计算器。论文主要阐述以面向对象的程序开发语言 eclipse 为开发工具, 设计并实现基于 Android 的计算器。论文首先介绍了 Android
2、 开发平台和环境以及 Android 工程的重要部分,其次对计算器系统和程序进行了分析和设计,再次对计算器进行了系统的实现,并对系统进行了严格的验证,最后本文对所做工作进行了总结。关键词:手机,Android,用户界面,计算器 IITHE CALCULATOR FUNCTION REALIZATION BASED ON ANDROIDABSTRACTWith the development of mobile communication technology and network technology, great changes have taken place on the mobile
3、 phone system. The original mobile phone only has the functions of communication and Smartphone has the functions of internet, chat, video conferencing and other services and entertainment. Android mobile phone platform which was developed by Google Company and many equipment manufacturers of hardwa
4、re and software vendors, as the era of neonatal has a unique advantage and prospects for development. This article is based on the Android platform calculator. The thesis describes object-oriented programming language eclipse development tools, design and implement a calculator based on the Android.
5、 The paper first introduces the Android development platform and environment as well as an important part of the Android project, followed by the calculator systems and procedures analysis and design, the realization of the system once again the calculator, and strict verification, Finally, a summar
6、y of the work done.Key words: mobile phone, Android, UI, calculatorIII毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日 期: 使用授权说明本人完全了解 大学
7、关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: IV学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。
8、作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名: 日期: 年 月 日导师签名: 日期: 年 月 日V目 录1 引言 .11.1 课题背景及意义 .11.1.1 课题背景 .11.1.2 课题意义 .11.2 智能手机平台系统 .21.3 课题来源 .32 基于 Android 平台计算器相关技术概
9、述 .42.1 Android 手机平台 .52.1.1 Android 起源及优势 .52.1.2 Android 体系结构 .52.1.3 Android 平台功能特征 .72.2 Android SDK 介绍 .92.3 XML 技术 .102.4 JNI 技术 .113 基于 Android 平台计算器设计 .123.1 系统的总体设计 .123.2 程序流程和系统功能设计 .133.2.1 程序流程设计 .133.2.2 系统功能设计 .143.3 基于 Android 平台系统具体设计 .153.3.1 总体模块详细设计 .153.3.2 输入模块详细设计 .163.3.3 显示模
10、块详细设计 .163.3.4 计算模块详细设计 .174 计算器系统实现 .184.1 Android 应用程序构成 .184.2 Android 应用系统文件结构 .194.3 构建 Android 应用程序用户界面 .214.3.1 Android 应用程序界面组件 .214.3.2 Android 应用系统界面组件 .224.3.3 Android 用户界面的实现 .244.4 计算模块的实现 .284.5 计算器演示 .305 结论 .32谢辞 .33参考文献 .34附录 1: .36附录 2: .3811 引言1.1 课题背景及意义1.1.1 课题背景随着社会的发展,经济水平的提高,
11、手机越来越普及。截止到 2010 年,中国手机用户数量将从 2007 年的 5.40 亿增长到 7.38 亿 1。同时伴随着移动互联网技术的发展,手机的功能也变得越来越丰富。从原来只具有简单通信功能的非智能手机到现在具有手机操作系统,除通话功能以外,还集上网、聊天、炒股、收发邮件等功能于一身的智能手机系统。智能手机 2具有独立的操作系统,像个人电脑一样支持用户自行安装软件、游戏等第三方服务商提供的程序,并通过此类程序不断对手机的功能进行扩充,同时可通过移动通讯网络来实现无线网络接入。智能手机同传统手机外观和操作方式类似,不仅包含触摸屏也包含非触摸屏、数字键盘手机和全尺寸键盘操作的手机。但是传统
12、手机都使用的是生产厂商自行开发的封闭式操作系统,所能实现的功能非常有限,不具备智能手机的扩展性。从广义上讲,智能手机除了具备手机的通话功能外,还具备个人信息管理以及基于无线数据通信的浏览器、GPS(Global Positioning System)和电子邮件功能。智能手机为用户提供了足够的屏幕尺寸和带宽,既方便随身携带,又为软件运行和内容服务提供个广阔的舞台,很多增值业务可以就此展开,如:股票、新闻、天气、交通、商品、应用程序下载、音乐图片下载等等。结合 3G 通信网络的支持,智能手机的发展,势必将成为一个功能强大,集通话、短信、网络接入、影视娱乐为一体的综合性个人手持终端设备 3。1.1.
13、2 课题意义随着通信技术的发展,3G 从制定出到现在越来越被人们关注。“3 G”(英语 3rd-generation)或“三代”是第三代移动通信技术的简称,是指支持高速数据传输的蜂窝移2动通信技术 4。目前 3G 存在四种标准:CDMA2000、WCDMATD-SCDMA、WiMAX。其中 TD-SCDMA(全称 Time Division-Synchronous CDMA)是由中国大陆独自制定的 3G 标准。为了推动我国的智能手机的发展,实现多功能的智能手机,方便人们丰富多彩而又快节奏的生活。本文正是基于 Android 平台开发的计算机器。论文主要阐述以面向对象的程序开发语言 eclips
14、e 为开发工具 , 基于智能手机 Android 之上设计一个计算器。本文的目标就是设计并实现基于 Android 的计算器,论文首先介绍了 Android 开发平台和环境以及Android 工程的重要部分,然后着重针对计算器的系统设计和系统设计的具体实现,最后实现计算器的各种功能并得到了很多好的验证。1.2 智能手机平台系统智能手机(Smartphone),是指“像个人电脑一样,具有独立的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类手机的总称”。目前全球主要的只能手机操作系统依次是
15、iPhone OS、Symbian、BlackBerry OS 和 Android,其中Android 最年轻,市场份额正迅速增加。下面简单介绍 Android 以外的几款常用的智能手机系统。IPhone OS 是苹果公司专门为 iPhone 开发的智能手机系统 5。iPhone 手机具有硬件与软件一一绑定的特性,Apple 公司采用与运营商分成的策略。iPhone 虽然开放了 SDK,可是却不能在 PC 上使用,这对于中国的应用开发市场是个不晓得阻碍。但它将创新的移动电话、可触摸宽屏 iPod 以及具有桌面级电子邮件、网页浏览、搜索和地图功能的突破性因特网通信设备这三种产品完美的融合为一体的
16、特性,也吸引了无数的用户。Symbian(中文名:塞班) 6是一个实时性、多任务的纯 32 位操作系统,具有功耗低、内存占用少等特点,非常适合手机等移动设备使用,经过不断完善,虽然在智能型手机市场取得了无比的成功,并长期居于首位,但是 Symbian S60、Symbian3,UIQ 等(尤其是S60)系统近两年亦遭遇到显著的发展瓶颈。最近 12 个月欧洲手机公司诺基亚(Nokia)在智能手机市场市占率的滑落是不争的事实。需要注意的是,并不是所有的 Symbian 系统都是智能系统,比如 S40 系统,就不属于智能手机系统。BlackBerry OS7是 RIM 专用的智能手机操作系统。Bla
17、ckBerry,在美国市场占有率相对较高,BlackBerry 的比较具有个性的设计就是宽大的屏幕和便于输入的 QWERTY 全键盘,3所以 BlackBerry 在移动电子邮件方面非常方便,由于我国手机用户发送短信对于发送邮件,所以 BlackBerry 系统的邮件优势在中国不存在,目前 BlackBerry OS 在智能手机操作系统的市场份额占据第三位 i,BlackBerry 手机市场主要在美国 8。windows mobile 是微软由于 Pocket PC 和 Smartphone 的软件平台 9。windows mobile 系统将大家熟悉的 Windows 桌面延伸到了移动设备中
18、。windows mobile 是Microsoft 为手持设备推出的“Windows 移动版”。受 Android 的冲击,目前 Windows Mobile 在智能手机操作系统的市场下降到 4%左右。Linux 凭借其开放源代码、免费的优势,经过来自全球程序员的努力,再加上google、IBM 等计算机巨头的支持。Linux 在手机操作系统市场中成为了衣服新生的力量,尤其是在许多知名厂商如摩托罗拉宣布支持 Linux 手机操作系统之后,Linux 的市场份额有增加的趋势。目前基于 Linux 的智能手机占有 7.3%的市场份额。Palm OS 由 Palm 公司研发,是一种 32 位的嵌入
19、式操作系统,它的操作界面采用触控式,几乎所有的控制选项都排列在屏幕上,使用触控笔进行所有操作。目前基于 Palm OS的智能手机占有 2.3%的市场份额 12。1.3 课题来源计算器作为现在人们日常生活中常用的一种工具已经可以说是人们日常生活中必不可少的工具了。但是计算器的发展经历了漫长的过程,凝聚无数先人的智慧,甚至连计算机的发展都可以说是源于计算器的发展。计算器和计算机一样都能够实现数据的输入、处理、存储和输出这些基本的功能,但计算器区别于计算机的地方就是,它不能自动的进行计算,必须要求由人来操作完成计算;而计算机通过提前编写好的程序就能够自动的按照程序进行处理。所以计算器和计算机的一个显
20、著的区别就在于是否需要人为地操作来完成运行。这二者还有另一个本质性的区别。计算器的处理数据的方法是生产时就已经固化在系统中了,所以计算器只能按照系统中规定的处理方法来处理用户要求的计算任务;而计算机由于可以自行安装操作系统和各种的相关软件和硬件,理论上计算机拥有的可扩展性是无穷的。所以简单的说,计算器和计算机的本质性区别就在于该系统是否存在可扩展性。在我所了解到的知识中,最早的计算工具可以追溯到中国古代一种叫做筹策(又叫算筹)的东西上。这种计算工具在计算的时候摆成纵式和横式两种数字,按照纵式相间的原则表示任何自然数,从而进行加、减、乘、除、开方以及其它的代数计算。负数出现后,4算筹分为红和两种
21、,红筹表示正数,黑筹表示负数。虽然我对于这种计算的原理不是很了解,但是不得不说,这种运算工具和运算方法确实是当时世界上独一无二的。直到今天仍有一些人在使用的珠算或者叫算盘,是中国古代计算工具中的另一项伟大发明,而从明朝开始使用的算盘就已经与现代的算盘几乎完全相同了。以上介绍完了中国关于计算工具的发展,下面我们来看看西方社会中计算工具的发展情况。我通过查询资料得知,17 世纪初这个时期,西方国家的计算工具开始有了一个较大的发展,英国数学家纳皮尔发明的“纳皮尔算筹“,英国牧师奥却德发明了圆柱型对数计算尺,这种计算尺的功能不仅仅能做加减乘除、乘方、开方运算,甚至可以计算三角函数,指数函数和对数函数,
22、这些计算工具的产生不单单是带动了计算器的发展,更是为现代计算器的发展奠定了一个坚实的基础。虽然当时的技术水平有限,这些工具使用的不是机械或者电子作为载体,但是这些计算工具却为了后世的计算器提供了一个良好的思路。1642 年,伟大的法国科学家帕斯卡在年仅 19 岁的时候就利用了算盘的计算原理发明了世界上第一部机械式的计算器,在这个计算器中有一些互相咬合的齿轮,一个转过十位的齿轮会使另一个齿轮转过一位,靠这样来实现十进制的算法,人们可以转动齿轮,把想要输入的数据输入进去,计算结果就会出现在另一个窗口中,但是这个计算器只能做一些加减计算。1694 年,莱布尼兹在德国将其改进,使这种计算器成为可以进行
23、加减乘除计算的计算器。此后,一直要到 20 世纪 50 年代末才有电子计算器的出现。2 基于 Android 平台计算器相关技术概述本章介绍了基于 Android 平台计算器相关技术。首先介绍了各种智能手机平台系统,并进行分析。重点介绍了 Android 平台系统,对 Android 体系结构及平台功能进行了介绍。同时还对本文界面开发实现要用的 XML 技术进行了简单的介绍,具体如下。52.1 Android 手机平台2.1.1 Android 起源及优势Android 平台自发布以来就一直吸引着广大开发者的目光,Android 一词的本义指“机器人”,同时也是 Google 于 2007 年
24、 11 月 5 日宣布的基于 Linux 平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件 14。Android 平台具有以下优点:(1)平台的开放性允许任何厂商加入,使其拥有更多的开发者,新颖的应用功能及创意可以不断地出现。(2)脱离了运营商的束缚,让手机更加贴近互联网。(3)应用程序都是基于 java 开发的,java 具有一次编写、到处运行的跨平台性。能够实现在所有的 Android 设备中运行,真正做到了硬件的无关性,降低了开发者的负担。(4)提供了标准的 API 和 SDK 开发包,手机厂商可以根据需要
25、自行开发或者使用已有的程序,从而打造出富有特色的 Android 平台。2.1.2 Android 体系结构Android 平台架构 15从上至下包含五部分:应用程序(Application)、应用框架(Application Framework)、开发库(Libraries),运行时环境(Android Runtime)以及 Linux 内核,如图 2-1 所示.(1).应用程序Android 同一系列核心应用程序包一起发布,该程序包包括 email 客户端、SMS 短消息程序、日历、联系人管理程序等。所有的应用程序都是用 Java 语言编写的。(2).应用框架应用框架式进行 Android 开发的基础。应用程序框架层包含了视图系统、内容提供器、窗口管理器、活动管理器、通知管理器、资源管理器、电话管理器和包管管理器 9 大部分。