1、天津工业大学毕业论文基于 Android 技术的中央气象台天气预报程序客户端系统的设计与实现姓 名 邓 学 院 计算机科学与软件 专 业 软件工程 指导教师 尹 马 职 称 副教授 工程师 2013 年 5 月 27 日天津工业大学毕业论文任务书题目 基于 Android 技术的中央气象台天气预报程序客户端系统的设计与实现学生姓名 邓 学院名称 软件学院 专业班级 软件课题类型 实际课题课题意义如今移动互联网迅速发展,移动互联网系统呈现 android、iOS、Windows Phone 三足鼎立之势,国外是美国的高新科技公司引领着移动互联网技术的发展,其中谷歌公司的 android 系统因其
2、开源的特性,在全球范围内得以普及最广。移动互联网的普及,让信息传播的更方便更快更广,人们对信息的需求也更加讲究,追求更人性化的服务。因此,制作出适合不同人群使用的软件应用也有了足够大的市场空间。移动互联网技术逐渐渗透入生活的每一层面,其中天气预报更是人们每天都关注的内容,制作一款更符合国人习惯的人性化天气预报程序客户端系统,对大众的生活有着很大指导意义。移动互联网发展迅速,android 平台在国内市场的普及率最为广,采用移动互联网技术提供天气预报是重大的趋势。运用时下流行的移动互联网技术,结合自身对 android 系统的研究,目的就是深度制作出一款更符合国人习惯的人性化天气预报程序客户端系
3、统,让人们可以随时随地了解到天气的变化。软件系统采用人性化的方式,使得直观呈现当前天气状况,轻松获得,一目了然。多城市自主切换,可以同时了解你的亲朋好友所在城市的天气变化,时刻多一份呵护。精准天气预报,让人们提前知晓气象变化,为天气的变化做好防护准备。并且可把自己最新了解的天气情况以及想说的话通过新浪微博,腾讯 QQ 空间,人人网和短信等方式第一时间分享给您的朋友。软件中的温馨提醒功能追求做到人性化,时刻做到满足使用者的需求。在移动终端上,天气预报应用是一款每个使用者都需要的基本应用,做好一款天气预报应用,对于天气预报信息的传递,具有深远的意义。任务与进度要求2013.2.25-2013.3.
4、17 搜集资料,前期文献参考的准备工作2013.3.18-2013.4.1 需求分析与软件设计2013.4.02-2013.5.01 初步制作天气预报 android 客户端系统并测试2013.5.02-2013.5.10 上线 Beta 版系统并进一步完善系统2013.5.11-2013.5.15 项目总结并进行后续工作2013.5.16-2013.6.02 毕业论文的审核、修改及定稿并装订、准备答辩主要参考文献1 Jason Ostrander美,刘文斌Android UI 基础教程人民邮电出版社, 20122 克曼特内尼印,麦克莱恩美 ,曾少宁,杨越精通 Android人民邮电出版社,2
5、0133 编程之美小组编程之美电子工业出版社,20084 Bruce Eckel美Java 编程思想M 北京:机械工业出版社,20075 伽玛等美,李英军等设计模式:可复用面向对象软件的基础机械工业出版社,20036 Cay S. Horstmann,Gary Cornell.Steinberg美Java 核心技术M北京:机械工业出版社,20087 Thomas H.Cormen,Charles E.Leiserson,Ronald L.Rivest,Clifford Stein 美 算法导论机械工业出版社,2006起止日期 2013 年 2 月 25 日2013 年 6 月 2 日备注院长
6、教研室主任 指导教师 毕业论文开题报告表2013 年 3 月 11 日姓名 邓 学院 计算机科学与软件 专业 软件工程 班级 软件题目 基于 Android 技术的中央气象台天气预报程序客户端系统的 设计与实现 指导教师 尹 马一、与本课题有关的国内外研究情况、课题研究的主要内容、目的和意义:1.与本课题有关的国内外研究情况在国内,人们对天气预报信息的来源,很大一部分还是来自于电视台甚至收音机报纸等传统媒介,随着移动互联网的普及,国人可以利用自己手持的移动终端,随时随刻地了解到天气的变化,做好出行的准备,提高工作效率。借鉴于发达国家的移动互联网技术,结合国内移动网络的实际情况,制作于 Andr
7、oid 技术的中央气象台天气预报程序客户端系统,从技术以及可普及程度等条件都已成熟。2.课题研究的主要内容Android 客户端应用:1我的账户(记录自己的个人信息及账户资料修改) ,2天气信息分享(分享到微博等社会化平台) ,3实时地理定位(根据所在位置显示当地的天气情况) ,4城市区域选择(由个人手动选择城市) ,5基本天气预报信息(显示今日今时的天气及未来三天的天气预报) ,6紫外线空气湿度等指数(提供紫外线、穿衣、舒适度、空气湿度等气象指数) ,7温馨提醒(根据天气预报指数提供人性化提醒)3.课题研究的目的和意义移动互联网发展迅速,android 平台在国内市场的普及率最为广,采用移动
8、互联网技术提供天气预报是重大的趋势。运用时下流行的移动互联网技术,结合自身对 android 系统的研究,目的就是深度制作出一款更符合国人习惯的人性化天气预报程序客户端系统,让人们可以随时随地了解到天气的变化。软件系统采用人性化的方式,使得直观呈现当前天气状况,轻松获得,一目了然。多城市自主切换,可以同时了解你的亲朋好友所在城市的天气变化,时刻多一份呵护。精准天气预报,让人们提前知晓气变化,为天气的变化做好防护准备。并且可把自己最新了解的天气情况以及想说的话通过新浪微博,腾讯 QQ 空间,人人网和短信等方式第一时间分享给您的朋友 ,时刻做到满足使用者的需求。在移动终端上,天气预报应用是一款每个
9、使用者都需要的基本应用,做好一款天气预报应用,对于天气预报信息的传递,具有深远的意义。4.本次毕业设计应达到的目标:通过移动客户端天气预报应用可以二十四小时随时随地了解到天气的变化,大大方便了人们的生活,而且其中的人性化功能,能根据当地的天气的变化,给出最合理的人性化提醒服务,从而使人们不容易出现由天气急速变化而引起的感冒等健康问题,方便人们的生活,提高人们的生活质量。二、进度及预期结果:起止日期 主要内容 预期结果2013.2.25-2013.3.172013.3.18-2013.4.12013.4.2-2013.5.12013.5.2-2013.5.102013.5.11-2013.5.1
10、52013.5.16-2013.6.02开题报告与任务书填写,搜集资料,前期文献参考的准备工作需求分析与软件设计初步制作天气预报 android 客户端系统并测试上线 Beta 版系统并进一步完善系统项目总结并进行后续工作毕业论文的审核、修改及定稿并装订、准备答辩完成完成完成完成完成完成完成课题的现有条件硬件:笔记本电脑一台。软件:Windows7 操作系统,android 4.0 系统,jdk7,Eclipse 。参考文献:1 Jason Ostrander美,刘文斌Android UI 基础教程人民邮电出版社,20122 克曼特内尼印,麦克莱恩美 ,曾少宁,杨越精通 Android人民邮电
11、出版社,20133 编程之美小组.编程之美电子工业出版社,20084 Bruce EckelJava 编程思想M 北京:机械工业出版社,20075伽玛等美 ,李英军等.设计模式:可复用面向对象软件的基础.机械工业出版社,2003审查意见指导教师: 年 月 日学院意见 主管领导: 年 月 日天津工业大学本科毕业论文评阅表(论文类)题目 基于 Android 技术的中央气象台天气预报程序客户端系统的设计与实现学生姓名 邓 学生班级 软件 0909 指导教师姓名 尹 马评审项目 指标 满分 评分能体现本专业培养目标,使学生得到较全面训练。题目大小、难度适中,学生工作量饱满,经努力能完成。 10选题题
12、目与生产、科研等实际问题结合紧密。 10课题调研、文献检索能独立查阅文献以及从事其他形式的调研,能较好地理解课题任务并提出实施方案;有分析整理各类信息,从中获取新知识的能力。15结构严谨,理论、观点、概念表达准确、清晰。 10论文撰写 文字通顺,用语正确,基本无错别字和病句,图表清楚,书写格式符合规范。 10外文应用 能正确引用外文文献,翻译准确,文字流畅。 5论文论点正确,论点与论据协调一致,论据充分支持论点,论证过程有说服力。 15有必要的数据、资料支持,数据、资料翔实可靠,得出的结论有可验性。 15论文水平论文有独到见解或有一定实用价值。 10合计 100意见及建议:评阅人签名: 年 月
13、 日天津工业大学毕业论文成绩考核表学生姓名 邓 学院名称 计算机科学与软件 专业班级 软件题目 基于 Android 技术的中央气象台天气预报程序客户端系统的设计与实现1毕业论文指导教师评语及成绩:指导教师签字: 年 月 日2毕业论文答辩委员会评语及成绩:答辩主席(或组长)签字: 年 月 日3毕业论文总成绩:a.指导教师给定成绩b.评阅教师给定成绩 c.毕业答辩成绩总成绩(a0.5+b0.2+c0.3)成绩:成绩:摘 要如今移动互联网迅速发展,各大网络巨头公司均在移动互联网领域加大研发力度,以寻求移动互联网的入口门票,当下的移动互联网呈现的是android、iOS 、Windows Phone
14、三足鼎立之势,国内移动设备以 android系统占有率最高,android系统免费开源的这一特性促使它得以在中国市场迅速发展。移动互联网的诞生,让人们可以更加迅速及时的获取数字信息,改变了人们的生活习惯,让信息的传播更快更方便更及时。也随着移动互联网的发展,各类移动应用程序被大量的开发了出来,网民对信息和应用程序的追求也更加讲究,追求更人性化的服务。现在,国人可以利用自己手持的移动终端,随时随刻地了解到天气的变化。借鉴于发达国家的移动互联网技术,结合国内移动网络的实际情况,本研究致力于制作出一款更符合国人习惯的人性化天气预报程序客户端系统,追求做到简约极致、方便易用。本研究课题利用Androi
15、d 相关技术进行开发,开发工具是Google官方提供的捆绑了最新版SDK的Eclipse 工具,程序支持左右滑动进行页面切换,采用了多个Fragment 与Activity 相结合的技术,网络访问上采用了异步传输技术,极大的优化了用户体验。关键词:天气预报;android;温度;异步传输ABSTRACTToday, the mobile Internet is rapid developing, the major networking giant companies in the mobile Internet field are do they best to seek entrance
16、tickets for the mobile Internet.the three major mobile Internet Systems is android, iOS and Windows Phone.With the characteristics of the free, open source ,the android system is developing rapidly in China.The birth of the mobile Internet, let people can more quickly and timely access to digital in
17、formation, changed peoples life habit, and let the information transmission faster, more convenient and timely.Nowaday, people can use their handheld mobile terminals, at any time with carved understanding to the change in the weather.Reference to the Mobile Internet technology of developed country
18、,combined with the actual situation of domestic mobile networks, the study is to create a more humane meet people accustomed to weather procedures the client system, and pursuit to achieve the ultimate simple, easy to use.The study base on the Android related technology,the development tools is boun
19、d to the latest version of the Eclipse SDK tools,which is provided by the official Google. The program support about slide to switch from one page to another,using the combination of multiple fragments and the Activity of technology, synchronous transmission is adoptedon network access technology,gr
20、eatly improved user experience. Key words:Weather forecast; Android ; Temperature; Asynchronoustransmission目录前言 1第一章绪论 21.1 系统开发背景 21.1.1 安卓系统的发展 21.1.2 安卓系统相关软件的现状 31.2 系统实现的目标 .31.3 系统的开发意义及目的 .3第二章系统相关技术介绍 52.1 开发技术的选择 .52.2 Android 系统的相关技术与开发模式 62.2.1 基于 Android 的体系结构 .62.2.2 基于 Android 开发组件的应用开
21、发模型 .82.2.3 基于 Android SDK 的 Eclipse 开发环境 .10第三章系统需求与分析 113.1 系统可行性分析 .113.1.1 技术可行性 113.1.2 设备可行性 .113.1.3 经济可行性 113.1.4 市场需求可行性 123.2 功能需求分析 .123.2.1 前台界面 123.2.2 后台功能需求 123.3 系统业务流程分析 13第四章系统设计 144.1 系统接口的选择 .144.2 系统模块设计 .144.3 系统流程设计 .154.4 数据库设计 .174.4.1 数据库需求分析 174.4.2 数据库结构设计 18第五章系统的具体实现 22
22、5.1 创建工程 225.2 全局界面的结构及实现 .225.3 主页面与异步传输技术的实现 .255.4 城市选择与系统 GPS 定位的实现 .285.5 趋势图的实现的实现 .295.6 城市管理的实现 .325.7 更多功能模块的实现 .345.7.1 温馨提示的实现 .345.7.2 天气指数的实现 .355.7.3 天气便签的实现 .375.7.4 天气分享的实现 .395.7.5 主题选择的实现 .405.8 桌面窗口小部件的实现 41第六章系统测试及分析 446.1 系统运行环境的搭建 .446.1.1 AVD 虚拟机的创建 446.1.2 搭建 Android 终端设备连接 .
23、456. 2 系统程序的安装和加载 .456.2.1 Eclipse 开发工具 .456.2.2 数据库的连接 .456.3 系统测试 .466.3.1 网络访问测试 .466.3.2 用户体验测试 .466.3.3 系统确认测试 .49结论 50参考文献 51附录文献翻译 52英文原文 .52中文译文 .56谢辞 59天津工业大学 2013 届本科生毕业论文1前言Android 系 统 已 成 为 时 下 国 内 手 机 厂 商 最 常 采 用 的 手 机 系 统 , 甚 至 已 成为 全 球 范 围 内 普 及 率 最 高 的 智 能 手 机 系 统 。 在 整 个 智 能 手 机 的 的
24、 生 态 系 统 中 ,在 刚 刚 过 的 第 一 季 度 , 即 2013 年 第 一 季 度 , 两 大 移 动 系 统 巨 头 , 苹 果 的iOS 系 统 和 谷 歌 的 Android 系 统 就 占 据 了 全 球 范 围 内 92%的 市 场 份 额 。 排在 其 后 的 是 微 软 的 WP 和 黑 莓 的 BlackBerry 系 统 , 昔 日 霸 主 塞 班 手 机 系 统已 渐 渐 老 去 。 从 设 备 的 激 活 量 上 看 , 在 2011 年 5 月 , Android 系 统 设 备 的激 活 量 首 次 达 到 一 亿 , 仅 仅 一 年 后 , 在 201
25、2 年 的 谷 歌 开 发 者 大 会 进 行 之 时 ,此 数 据 已 高 达 4 亿 , 如 今 搭 载 Android 系 统 设 备 的 激 活 量 已 经 超 越 了 9 亿 。由 Android 系 统 所 占 有 的 市 场 份 额 及 其 惊 人 的 增 长 速 度 上 看 , Android系 统 正 处 于 黄 金 高 速 发 展 时 期 , 凭 借 其 开 源 的 力 量 和 日 益 完 善 的 生 态 系 统 ,Android 将 越 来 越 受 欢 迎 , 在 移 动 互 联 网 的 地 位 也 日 益 显 著 。在 经 过 对 市 场 深 入 进 行 分 析 及 综
26、 合 各 个 系 统 的 优 劣 势 筛 选 后 , 本 系 统 采用 时 下 最 为 流 行 的 Android 系 统 进 行 开 发 , 致 力 于 开 发 出 一 款 符 合 中 国 人 习惯 的 高 精 确 度 的 天 气 预 报 。 本 系 统 除 了 实 现 基 本 的 天 气 预 报 功 能 之 外 , 还 提供 未 来 六 天 天 气 走 向 趋 势 图 、 多 城 市 切 换 、 天 气 记 事 便 签 等 等 功 能 , 追 求 做到 简 单 易 用 , 方 便 操 作 。天津工业大学 2013 届本科生毕业论文2第一章绪论1.1 系统开发背景计算机网络的出现给世界带来了
27、翻天覆地的变化,近几十年来,这些高新科技为世界的发展和变革做出了巨大的贡献。如今已发展到了移动互联网的时代,随着移动智能终端的高速发展及迅速的普及,移动互联网市场规模及整体市场不断扩大,人们对移动应用的需要也越来越大,移动互联网行业正值黄金发展时期。或许可以猜测到的是,在未来的 5、6 年,移动互联网将超越传统互联网,成为人们最常访问网络的入口,互联网依托于移动互联网而退居二线。我们常常可以看到有众多的移动互联网应用迅速走红,或许可以说,每天都有着新的移动应用,新的移动互联网创业公司一夜走红。信息的交换传播方式将是巨大的改变,未来的趋势是深度整合传统媒体与互联网、移动互联网。其中可见,移动互联
28、网发展迅速,需求旺盛,这留给移动互联网开发者的是充满全方位的创新机遇。1.1.1 安卓系统的发展Android 是 一 基 于 linux 内 核 的 移 动 平 台 操 作 系 统 , 并 继 承 了 Linux 开放 源 代 码 这 一 特 性 , 搭 载 的 应 用 程 序 采 用 同 样 是 开 源 的 Java 作 为 主 要 的 开发 语 言 , 最 初 由 Android 之 父 Andy Rubin 所 研 发 , 在 2005 年 被 Google 注资 收 购 , 随 后 Google 对 android 进 行 大 笔 投 入 , 并 组 建 开 放 手 机 联 盟 开
29、发 改良 , 逐 渐 进 行 版 本 开 发 升 级 , 加 速 研 发 进 度 , 并 被 拓 展 到 平 板 电 脑 等 移 动 设备 上 , 及 现 在 很 多 的 智 能 电 视 也 是 基 于 Android 系 统 所 研 发 , 不 久 的 将 来 ,即 Android 5.0 或 将 支 持 笔 记 本 电 脑 等 设 备 。从 2007 年 到 2013 年 , Android 已 经 过 了 将 近 六 个 年 头 。 这 六 年 间 , 犹如 从 初 生 的 婴 儿 , 再 到 今 天 王 者 , 至 完 成 这 一 成 长 历 程 , Android 总 共 经历 了
30、八 次 重 大 的 升 级 。Android 在 被 Google 注 资 收 购 后 , 在 2007 年 11 月 12 日 , 正 式 发 布Android Beta 版 操 作 系 统 。 10 个 月 之 后 , 即 2008 年 9 月 , Android 1.0 正式 诞 生 , 这 也 是 Android 系 统 最 早 的 正 式 版 本 。 首 次 搭 载 这 款 系 统 的 是HTC 的 G1 手 机 , 正 式 开 启 了 Android 手 机 移 动 终 端 的 一 扇 大 门 。从 2009 年 4 月 30 日 发 布 的 Android 1.5 开 始 , 之
31、 后 发 布 的 所 有Android 系 统 版 本 代 号 都 以 糕 点 命 名 , 并 以 英 文 26 字 母 进 行 排 序 , 版 本 代号 如 下 2:纸 杯 蛋 糕 Cupcake( Android 1.5)甜 甜 圈 Donut( Android 1.6)天津工业大学 2013 届本科生毕业论文3松 饼 Eclair( Android 2.0/2.1)冻 酸 奶 Froyo( Android 2.2)姜 饼 Gingerbread( Android 2.3)蜂 巢 Honeycomb( Android 3.0)冰 激 凌 三 明 治 Ice Cream Sandwich(
32、Android 4.0)果 冻 豆 Jelly Bean( Android4.1 和 Android 4.2) 。至 此 , Android 已 发 布 了 八 个 重 大 版 本 , 逐 步 奠 定 了 Android 系 统 在 移 动 终端 设 备 的 霸 主 地 位 。1.1.2 安卓系统相关软件的现状本 软 件 应 用 程 序 系 统 致 力 于 开 发 出 一 款 符 合 国 人 习 惯 的 简 单 易 用 的 天 气 预 报系 统 。 时 下 国 内 市 场 上 虽 有 着 众 多 的 相 关 软 件 , 其 中 市 场 占 有 率 比 较 高 的 有天 气 通 、 墨 迹 天
33、气 等 , 但 都 依 然 未 能 做 到 像 腾 讯 QQ 在 即 时 通 讯 领 域 那 样占 有 绝 对 的 市 场 份 额 , 也 没 能 像 四 大 门 户 在 门 户 网 站 领 域 那 样 形 成 四 家 独 大的 局 面 , 相 关 的 天 气 预 报 终 端 程 序 均 处 于 起 步 或 逐 渐 发 展 之 势 , 依 然 不 足 以满 足 移 动 网 民 的 需 求 , 本 系 统 以 更 人 性 化 的 用 户 体 验 为 起 点 , 制 作 出 的 天 气预 报 应 用 程 序 正 是 在 这 样 的 背 景 下 推 出 , 以 满 足 不 同 网 民 的 需 求 ,
34、 做 成 一 款更 人 性 化 的 天 气 预 报 软 件 。1.2 系统实现的目标基 于 Android 系 统 平 台 , 采 用 Android 平 台 的 主 流 开 发 语 言 Java 进 行开 发 , 除 了 主 要 实 现 基 本 的 天 气 预 报 功 能 之 外 , 还 实 现 未 来 六 天 天 气 温 度 走向 趋 势 图 , 和 多 个 城 市 进 行 选 择 切 换 , 并 能 提 供 自 动 GPS 地 理 位 置 定 位 功能 , 和 更 加 人 性 化 的 天 气 日 记 便 签 , 能 方 便 地 让 使 用 者 随 时 随 地 进 行 记 事 ,以 及 根
35、 据 不 同 人 的 喜 欢 , 自 行 可 选 择 自 己 偏 好 的 主 题 壁 纸 等 等 。 力 求 做 到 更符 合 中 国 人 的 使 用 习 惯 , 方 面 随 时 随 地 进 行 操 作 。1.3 系统的开发意义及目的现 代 人 的 生 活 节 奏 快 , 从 而 往 往 忽 略 了 天 气 的 急 速 变 化 , 以 至 于 忘 记 加衣 带 雨 具 等 , 在 超 过 自 身 抵 抗 力 负 荷 时 , 就 会 引 发 感 冒 流 感 等 症 状 , 造 成 没必 要 的 痛 楚 。 此 种 情 况 完 全 可 以 通 过 及 时 做 好 防 护 措 施 来 避 免 , 若
36、 此 时 有 一款 人 性 化 的 天 气 预 报 程 序 供 其 使 用 , 对 使 用 者 来 说 是 足 以 感 到 幸 运 的 。在 对 中 国 人 的 习 惯 及 不 同 人 群 的 具 体 需 求 进 行 深 入 研 究 , 综 合 各 方 面 因素 , 从 而 开 发 出 一 款 符 合 国 人 体 验 习 惯 的 天 气 预 报 终 端 应 用 , 在 能 满 足 不 同人 群 需 求 的 同 时 , 更 是 能 提 醒 人 们 进 行 更 合 理 的 穿 衣 出 行 等 行 为 , 从 而 提 升人 们 的 生 活 质 量 。天津工业大学 2013 届本科生毕业论文4一 个
37、好 的 天 气 预 报 程 序 , 其 作 用 意 义 深 远 , 在 大 的 方 面 可 以 预 防 经 济 损失 , 比 如 暴 风 , 台 风 等 ! 而 在 小 的 方 面 , 其 作 用 亦 是 不 可 忽 视 , 天 气 千 变万 化 , 急 速 骤 变 的 气 温 往 往 引 发 大 量 人 群 的 集 体 感 冒 , 若 一 个 好 的 天 气 预 报程 序 能 让 人 们 时 刻 留 意 到 天 气 的 变 化 , 即 可 有 效 避 免 这 些 感 冒 等 症 状 的 发 生 。由 此 可 见 一 个 人 性 化 天 气 预 报 的 重 大 意 义 。天津工业大学 2013
38、 届本科生毕业论文5第二章系统相关技术介绍2.1 开发技术的选择当 前 的 流 行 的 移 动 平 台 主 要 有 iOS、 Android、 Windows Phone, 此 三者 呈 三 足 鼎 立 之 势 , 本 系 统 采 用 的 是 开 源 的 Android 操 作 系 统 , 采 用 的 开发 语 言 是 同 样 基 于 开 源 Java 语 言 , 如 表 2-1 所 示 , 比 较 这 几 种 系 统 的 区 别 :表 2-1 iOS、 Android、 Windows Phone 的比较表iOS Android Windows Phone内核 OS X Linux Wind
39、ows CE7应用开发语言 Objective-C Java C#应用开发平台 XCode Eclipse Visual Studio多任务处理 限制后台+推送 多任务并后台 限制后台+推送应用商店 App Store Google Play WP Store 应用数量 多 多 较少系统安全性 较高 易感染恶意软件 高支持厂家 仅限于苹果自家设备 多、支持广泛 暂有诺基亚、三星、HTC 等通知机制 通知中心(iCloud ) 可拓展通知 人性化的 Live Title市场占有率 高 高 较低Android 系 统 在 市 场 上 占 有 极 高 的 市 场 份 额 , 其 所 采 用 的 语
40、言 是 使 用 人群 较 多 Java 语 言 进 行 开 发 。 Java 在 智 能 处 理 内 存 分 配 及 动 态 回 收 方 面 有 着先 天 性 的 优 势 。Java 是 目 前 最 广 泛 使 用 的 编 程 语 言 之 一 , 它 以 简 单 易 学 易 用 , 面 向 对 象 ,以 跟 人 相 类 似 的 思 维 模 式 进 行 软 件 开 发 , 并 稳 定 、 与 平 台 无 关 等 特 性 得 到 众多 开 发 者 的 青 睐 ; Java 是 一 解 释 型 语 言 , 先 被 编 译 成 二 进 制 的 .class 文 件 ,其 原 理 是 翻 译 一 句 ,
41、 然 后 即 执 行 一 句 , 这 过 程 不 产 生 整 个 的 机 器 代 码 程 序 ,提 高 执 行 效 率 10。java 还 有 一 个 大 的 特 点 是 内 置 了 对 多 线 程 的 良 好 支 持 , 并 能 动 态 的 装 载面 向 对 象 的 类 , 能 有 效 的 在 分 布 式 环 境 中 动 态 的 维 护 程 序 及 类 库 , 而 如C+等 语 言 , 每 当 类 库 进 行 升 级 时 , 相 应 程 序 都 需 要 重 新 进 行 修 改 , 极 大 的浪 费 人 力 物 力 , 降 低 了 程 序 效 率 。天津工业大学 2013 届本科生毕业论文6由
42、 此 可 见 , Android 平 台 采 用 Java 语 言 作 为 其 应 用 程 序 的 开 发 语 言 , 相对 于 其 他 系 统 平 台 , 有 着 很 大 的 优 势 。 开 发 者 用 Java 进 行 程 序 开 发 , 可 以方 便 简 单 的 进 行 各 项 操 作 。而 在 不 可 忽 视 的 另 一 方 面 , 由 于 Android 开 源 的 特 性 , 及 广 泛 而 繁 杂 的多 家 支 持 厂 商 , 系 统 版 本 分 裂 未 得 到 有 效 的 控 制 , 从 而 隐 性 提 高 了 开 发 人 员的 软 件 开 发 难 度 。 在 感 染 恶 意
43、软 件 难 易 程 度 方 面 , 多 而 繁 杂 的 Android 亦是 首 当 其 冲 , 这 也 是 开 源 软 件 亟 待 解 决 的 问 题 , 进 几 年 来 , Google 及 众 多研 发 人 员 对 Android 系 统 的 安 全 性 做 了 极 大 的 提 升 , 安 全 性 明 显 有 效 得 到 提升 , 所 以 当 下 进 行 Android 应 用 程 序 进 行 开 发 , 在 做 好 有 效 的 安 全 防 范 , 已可 以 有 效 的 解 决 了 安 全 性 问 题 。2.2 Android 系统的相关技术与开发模式2.2.1 基于 Android 的
44、体系结构Android 最 初 是 为 一 个 移 动 设 备 平 台 而 研 发 的 系 统 , 该 系 统 是 基 于Linux 内 核 而 开 发 的 , 如 图 2-1 所 示 ,它 的 系 统 体 系 层 次 结 构 包 括 有 四 大 部 分 :应 用 程 序 ( Application)应 用 程 序 框 架 ( Application Framework)各 种 库 ( Libraries) 和 Android 运 行 环 境 ( Android RunTime)操 作 系 统 层 ( OS) , Linux 内 核天津工业大学 2013 届本科生毕业论文7图 2-1 Andr
45、oid 系 统 体 系 层 次 结 构Android 的 应 用 程 序 层 主 要 是 用 户 UI 界 面 方 面 的 程 序 , 这 也 是Android 软 件 开 发 人 员 需 直 接 接 触 的 一 层 , 它 一 般 是 一 java 语 言 进 行 编 写 ,然 后 打 包 成 一 APK 程 序 包 , 普 通 Android 系 统 的 使 用 者 只 需 将 这 些 APK程 序 包 在 自 己 的 设 备 上 进 行 安 装 即 可 。 Android 系 统 本 身 也 自 带 了 众 多 的 程序 应 用 2, 犹 如 手 机 上 应 有 的 基 本 通 讯 功
46、能 拨 打 电 话 、 短 信 、 联 系 人 , 及 更多 的 是 智 能 手 机 必 备 的 主 屏 幕 、 浏 览 器 、 视 频 、 图 库 相 册 等 等 核 心 应 用 。Android 应 用 层 也 是 留 给 软 件 开 发 人 员 最 大 可 创 造 空 间 的 一 层 , 在 这 一 层 面 ,软 件 开 发 人 员 可 充 分 发 挥 自 己 的 创 新 才 智 , 开 发 出 一 些 市 场 亟 需 的 程 序 应 用 。同 样 , 本 天 气 预 报 程 序 亦 是 基 于 这 一 层 面 而 开 发 , 致 力 于 开 发 出 一 款 更 简 单易 用 而 符 合
47、 国 人 用 户 习 惯 的 优 秀 应 用 。处 于 Android 应 用 程 序 下 面 一 层 的 是 Android 应 用 程 序 架 构( Application Framework) , 它 给 应 用 程 序 的 开 发 人 员 提 供 了 各 种 API, 可以 说 , 它 就 是 一 个 应 用 程 序 框 架 1。 应 用 程 序 框 架 层 提 供 了 Android 应 用程 序 中 常 用 的 大 部 分 UI 设 计 控 件 , 如 TextView( 文 本 显 示 ) ,ImageView(图 片 ),Text boxes(文 本 框 )等 Views (视
48、 图 组 件 )控 件 。 和 提 供 了 可以 满 足 及 简 化 程 序 开 发 工 作 的 Activity ( 活 动 ) 、 Service ( 服 务 ) 、Broadcast Intent Receiver ( 广 播 意 图 接 收 者 ) 、 Content Provider ( 内 容 提供 者 ) 等 。再 往 下 的 一 层 是 Libraries 和 Android RunTime 运 行 环 境 层 2, 可 以称 本 层 次 为 一 中 间 件 层 , 共 分 为 两 个 部 分 , 一 个 是 主 要 以 C+语 言 编 写 的各 种 类 库 , 另 一 部 分
49、 是 Android RunTime 运 行 环 境 。 各 种 类 库 包 括 了 C库 、 界 面 管 理 工 具 ( Surface Management) 、SQLite、 SGL、 WebKit、 OpenGL ES 1.0、 多 媒 体 框 架( MediaFrameword) 等 , 这 些 类 库 以 中 间 件 的 形 式 提 供 给 软 件 开 发 工 作 人 员 ,它 们 与 移 动 终 端 设 备 的 平 台 应 该 有 着 密 切 的 关 系 。 Java 有 一 大 的 特 点 是 平台 移 植 性 强 , 在 这 里 , Android RunTime 运 行 环 境 是 基 于 Dalvik 虚 拟 机技 术 给 Java 程 序 提 供 运 行