首页 培训机构文章正文

Android 课程设计报告

培训机构 2025年08月02日 21:09 5 sansa2025

Android 课程设计报告(精选6篇)

Android 课程设计报告

课 程 设 计

课程名称: 嵌入式技术课程设计 设计题目: 基于Android系统的小查询工具 学 院: 信息工程与自动化学院 专 业: 计算机科学与技术 年 级: 2010级 学生姓名: 指导教师: 日 期: 2013/7/8

Android 课程设计报告

教 务 处 制

课 程 设 计 任 务 书

信息工程与自动化 学院 计算机科学与技术 专业 2010 年级 学生姓名:

课程设计题目: 基于Android系统的小查询工具 课程设计主要内容:

通过本课程设计,使学生巩固软件工程的基本概念、原理,熟悉安卓应用开发环境和技术,学会完成一个移动终端应用软件的分析、设计、编码测试和安装,将理论与实际相结合,强化学生的项目开发和团队意识,提高学生分析能力和创新能力

基本理论

1、Android系统的开发方法及基本原理

2、JavaEE应用程序设计开发技术 实验方法与基本要求

要求学生掌握Windows环境下Android系统开发的一般方法,AndroidSdk 集成开发环境的构建及JavaEE应用程序的开发。整个设计过程必须由学生自己独立完成,课程设计按人一组,分组进行全过程的设计。

设计内容

1、Windows环境下构建Android系统的开发环境

2、基于Android模拟手机,设计手机应用程序

3、将程序下载的Android手机上应用

设 计 指 导 教 师(签字): 教学基层组织负责人(签字):

年 月 日

目录

一、课程设计的目的及要求...................................3 1.1 课程设计的目的.......................................3 1.2 课程设计要求………………………………………………………………………3

二、Android应用程序开发背景....................................................................3 2.1开发背景...............................................3 2.2开发环境...............................................4

三、Android应用程序开发环境搭建............................5 3.1所需软件的下载…………………………………………………………………… 5 3.2相应软件的安装.........................................5

、“小查询工具”的设计与实现„„„„„„„„„„„„„„„10 1.总体设计„„„„„„„„„„„„„„„„„„„„„„„ 10 1)界面设计„„„„„„„„„„„„„„„„„„„„„10 2)功能设计„„„„„„„„„„„„„„„„„„„„„12 2.详细设计„„„„„„„„„„„„„„„„„„„„„„„ 12 1)模块设计„„„„„„„„„„„„„„„„„„„„„12 2)编码实现„„„„„„„„„„„„„„„„„„„„„12 3.手机上运行截图„„„„„„„„„„„„„„„„„„„„ 14

五、总结与体会„„„„„„„„„„„„„„„„„„„„„„„16

基于Android系统的小查询工具设计

一、课程设计的目的及要求 1.1 课程设计的目的

1)复习、巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握;搭建一个完整的安卓开发环境。

2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力,提高学生适应实际,实践编程的能力;

3)培养学生在项目开发中团队合作精神,创新意识及能力。

1.2 课程设计要求

1)通过Eclipse搭建一个完整的安卓开发环境。

2)在安卓开发环境上编写一个简单的安卓软件,并且能够在手机上运行。

二、Android应用程序开发背景 2.1开发背景

1.智能手机的市场

(1)功能多样化的智能手机挑战全球PC出货量

移动互联网时代的来临,直接促进了搭载智能操作系统、具有强大扩展性的智能手机、平板电脑等移动终端产业的蓬勃发展。来自美国最大的风险投资机构KPCB的数据显示,全球智能手机出货量正在以远高于台式电脑、笔记本电脑出货量的速度快速增长,该机构预计2013年全球智能手机出货量将达到4.13亿,超过台式电脑与笔记本电脑出货量的总和。

(2)智能手机的用户使用数量正在高速增长。据市场调研机构Gartner信息,2011年全球智能手机的总出货量将会达到4.68亿部,相比2010年实现了57.7%的增长,而谷歌Android操作系统将会在今年之内成为全球最大的智能手机操作系统。另外,全球市场调研机构IDC预计未来5年中国手机市场上,智能手机替代传统功能手机的趋势将日益明显,未来5年中国智能手机市场复合增长率将达到34.1%,人们对IT设备智能化的向往是这一增长率能够实现的主要因素,并且与其他国家相比,中国智

在path变量(已存在不用新建)添加变量值:%JAVA_HOME%bin;%JAVA_HOME%jrebin(注意变量值之间用“;”隔开)

检验环境变量是否配置成功:“开始”-->“运行”-->输入“javac”-->“Enter”,如果能正常打印用法说明配置成功!

选择目标工具所在的文件夹跳出安装工具的目录

勾选目录点击Next,即可开始安装;安装的详细目录:

安装完成后,可以在Preference处查找到:

4.安装SDK(SDK解压即可使用)

安装好以后,通过SDK下载开发所需的源文件包:

这个操作只有在联网的时候才能进行下载。

四、“小查询工具”的设计与实现

1.总体设计

1)界面设计

主界面:

02)功能设计

对于这次课程设计编写的小查询工具,我们需要它能够帮助我们完成的功能为:手机归属地查询、身份证信息查询、区号邮编城市查询。对于小查询工具的每个查询功能,当用户点击相应的功能时,它能够帮助用户查询用户所需要的信息。

2.详细设计

1)模块设计

I、主界面模块(选题模块)

该模块是查询软件的主界面,在该模块界面有三个功能:手机归属地查询、身份证信息查询、区号邮编城市查询。用户根据自己所要查询的信息,选择相应的功能就可以查询用户想知道的信息。II、手机归属地查询模块

在该模块中,当用户在输入框中输入一个正确的号码时,点击“开始查询”按钮,就可以查询到该手机号码的归属地。III、身份证信息查询模块

在该模块中,当用户在输入框中输入一个正确的身份证号码时,再点击“开始查询”按钮,就可以查询到该身份证号码所代表的人的生日、性别以及出生地址。IV、区号邮编城市查询模块

在该模块中,当用户在输入框中输入一个正确的区号或者邮编或者城市名称时,点击“开始查询”按钮,就可以查询到其对应的省份、城市、区号、邮编以及归属地。

2)编码实现:

各包内的JAVA源文件:

界面切换等活动的基本代码:

3.手机上运行截图

手机截图:

516-

课程设计报告书

2017-2018学年第一学期

课程名称:《Android应用程序设计课程设计》

设计题目: 计算器的设计和实现 系

别: 信息工程系 班

级: 移动16 姓 名: 杨芝源 起止日期: 2018.1.2---2018.1.12 指导教师: 黄旺华

摘要

Android是当今最重要的手机开发平台之一,他是建立在Java 基础之上的,能够迅速建立手机软件的解决方案。Android的功能十分强大,成为当今软件行业的一股新兴力量。

本实训是在学习java语言程序设计的基础上进行的一次综合实践。通过综合训练,要求学生掌握java语言程序设计的基本技能和Android编程的应用开发手机app,并较系统地掌握JAVA语言程序设计开发方法以及帮助文件的使用等。

简单计算器又是手机上必备的小程序,所以此次创新实践很有意义,使用性很强。

关键词: Android 手机app 计算器

目录

1、需求分析...................................................................................................................1

2、概要设计...................................................................................................................2

2.1 总体设计...................................................................................................2 2.2 模块设计...................................................................................................3

3、详细设计...................................................................................................................5

3.1 输入模块...................................................................................................5 3.2 显示模块...................................................................................................5 3.2 计算模块...................................................................................................5

4、实现............................................................................................................................7

4.1 公共类.......................................................................................................7 4.2 加减乘除模块1........................................................................................7 4.3 三角函数模块2........................................................................................7 4.4 某某模块3................................................................................................7

5、测试..........................................................................................................................8

5.1 测试方案...................................................................................................8 5.2 测试用例...................................................................................................8 5.3 测试结果...................................................................................................8

6、总结..........................................................................................................................9

1、需求分析

随着智能手机的普及,生活工作等方面的应用都迁移到手机中,本课程设计旨在实现一种某某的APP,为人们解决设计一款基于Android系统下的计算器,实现一般计算器可以进行的加减乘除算法,科学计算三角函数以及清零操作。

通过对该问题的分析,APP主要涉及的对象有:计算器

主要的事务是:

1、计算器界面友好,方便使用,具有良好的交互性。

2、具有基本的加、减、乘、除功能,还有+—、开方、平方功能。

3、能够判断用户输入运算数是否正确。

4、支持小数运算。

5、具有退格功能,能够删除最后一个输入,ce。

6、具有清除功能,删除所有,c。

7、具有结果存储功能,能够显示存储器状态,支持触屏手机。

需求分析得出的流程图:

知道了系统的功能以后,我们通过main.xml来建立显示界面,完成后系统开始监听用户的按键输入,每次输入系统都会判断一次用户输入的类型,是数字还是运算符号或者是清除,判断完后分成不同类型如数字,符号,基本运算等等进行进一步的处理,根据用户的要求继续进行下一步的操作,最后计算出最终结果并显示在显示区。系统流程图如图所示:

2、概要设计

2.1 总体设计

整个程序基于android技术开发,出总体模块外主要分为输入模块、显示模块以及计算模块(包括一些其它功能)这三大部分。

在整个系统中总体模块控制系统的生命周期,输入模块部分负责读取用户输入的数据,显示模块部分负责显示用户之前输入的数据以及显示最终的计算结果,计算模块部分负责进行数据的运算以及一些其她的功能。

总体模块的作用主要是生成应用程序的主类,控制应用程序的生命周期。

主要:由于不同的Android手机有着不同的分辨率,将不同分辨率的图标图片放置在相应位置。Drawable-hdpi中放置分辨率最高的图标,drawable--ldpi中放置分辨率中等的图标,drawable-mdpi中放置在分辨率最低的图标。

2.2 模块设计

一、输入模块

输入模块主要描述了计算器键盘以及键盘的监听即主要负责读取用户的键盘输入以及响应触屏的按键,需要监听手机按键动作以及用指针事件处理方法处理触屏的单击动作(以松开按键为准)。同时提供了较为直观的键盘图形用户界面。

二、显示模块

显示模块描述了计算器的显示区,即该区域用于显示用户输入的数据以及最终的计算结果,同时还负责显示一些其她的信息。

三、计算模块

计算模块则主要描述了计算器的整体,实现了计算器的界面,负责计算用户输入数据,包括加、减、乘、除、等各种计算功能,记忆数据的相关功能,退格以及清零的功能。、详细设计

3.1 输入模块 一)界面效果

二)类块模型图

3.2 显示模块 一)界面效果

二)类块模型图

3.3 计算模块 一)界面效果

二)类块模型图、实现

开发环境介绍

4.1 公共类

4.2 某某模块1

4.3 某某模块2

4.4 某某模块3

74、测试

5.1 测试方案

5.2 测试用例

5.3 测试结果

课程开设背景

目前, 常见的智能手机操作系统很多, 主要有以下几种:IOS、Symbian、Android、Black Berry OS、Windows Phone等。在诸多的移动平台中, Android是基于Linux平台开源的手机操作系统, 是由Google公司和开放手机联盟共同开发, 以其优越的性能及开放性, 受到了各手机厂商与通讯运营商的推崇, 迅速地占领了很大的市场份额。Android手机的推广, 就需要大量的程序员为其开发应用程序。

鉴于上述原因, Android已经引起越来越多高校的重视, 并且在教学、科研、人才培养等方面开始逐步引入Android相关课程。从2010年开始, Google在中国和北京大学、同济大学、浙江大学、中山大学、武汉大学等20多所高校通过课程合作的形式, 把Android引入课堂教学[1]。

我院在2011年以市场为导向, 根据市场需求, 结合本院实际情况, 开设《Android程序设计》课程, 这样既可以提高学生的实际动手实践能力, 又可以促进学生就业, 增加学生走上工作岗位所需的技能。

课程教学环节改革

高等教育课程作为高等教育教学中的核心关键环节, 对教育教学的整体质量、大学生素质的提高都起着重要的影响[2]。而本次课程改革以培养学生的创新精神和实践能力为目的, 将工作过程、教学改革融为一体, 把素质与能力、开发与设计有机地结合起来, 有效地提升学生综合素质[3]。针对《Android程序设计》课程的改革是以提升学生的实际动手能力为目标, 本文从教学计划、教学内容、教学方法几个方面进行阐述。

1.教学计划改革

教学计划 (课程计划) 是课程设置的整体规划, 规定不同课程类型相互结构的方式, 决定着教学内容总的方向和总的结构。为了让学生能够更好地学习《Android程序设计》这门课程, 需要指定一个合理的教学计划, 设置相应的先修课程与后继课程, 而不是单独开设该课程, 成为一门孤立的课程。

在笔者所在学院中, 为了能够让学生更好地掌握基于Android的程序设计, 对教学计划进行改革。在改革后的教学计划中, 围绕Android移动平台, 开设了多门与之相关的课程, 主要有:Java程序设计、Android操作系统、Android程序设计、Android游戏开发, 从而形成一个循序渐进的学习计划, 有利于学生的学习以及技能的稳固、提高。下面对每一门课程的开课时间及作用进行阐述。

⑴Java程序设计。该课程是Android程序设计的先修基础课程。Android移动平台的应用程序主要使用Java语言进行开发设计, 所以只有掌握了Java程序设计, 才能开发Android应用程序。通过本课程, 学生可以掌握面向对象的编程思想与Java的基本语法、常用技术。

⑵Android操作系统。该课程是Android程序设计的先修专业课程。通过本门课程, 学生可以了解、熟悉Android操作系统的结构、运行原理, 这样才能更好地学习、掌握Android程序设计。

⑶Android程序设计。该课程是学习Android程序设计的入门基础课程。通过本课程, 学生可以掌握Android程序设计的基础知识及调试方法, 能够开发设计一些简单的Android应用程序。

⑷Android游戏开发。该课程是Android程序设计的提高课程。通过本课程, 学生可以在Android程序设计课程的基础上, 进一步提高, 熟悉Android平台下游戏的开发, 能够开发简单的Android游戏。

2.教学内容改革

对于《Android程序设计》这门课程, 笔者所在项目组的教师首先将该课程定位为基于Android移动平台程序开发的入门课程, 然后制订教学大纲, 对课程的内容进行精心筛选, 并且对每一部分的教学内容指定详细的要求与课时分配。在课程内容的选取过程中, 以提升学生技能为原则, 选取Android程序设计中常用的基础知识为教学内容, 同时引入了大量的实例, 避免因为过多的理论而导致学生眼高手低的情况发生。对于本课程的教学内容、课时分配如表1所示。

结合本院实际情况, 下面对教学内容中每一章节的具体要求进行阐述。

⑴Android概述:要求了解Android平台的发展历史。

⑵Android开发平台搭建与设置:要求了解创建Android程序的方法、掌握Android开发平台的搭建、Android应用程序构成。

⑶Android布局管理:要求掌握Android中线性布局、相对布局、表格布局、帧布局、绝对布局的使用, 了解布局之间的嵌套。

⑷Activity组件介绍:要求了解Activity的生命周期、掌握Activity之间的调用及数据传送。

⑸常用基本控件:要求掌握Text View、Edit Text、Button、Radio Button、Check Box等基本控件使用。

⑹高级控件:要求掌握Auto Complete Text View、Spinner、List View、Grid View、Progress Bar、Gallery等高级控件的使用。

⑺菜单与消息提示:要求掌握选项菜单、上下文菜单、Alert对话框、Toast、Notification的使用方法。

⑻Android程序调试:要求掌握Android程序的调试方法、DDMS的使用。

⑼Android数据存储与处理:掌握首选项、文件、数据库的访问方法, Content Provider类的使用方法。

⑽网络通信与服务:掌握消息广播、Service的使用, 了解HTTP网络通讯、Web View控件、E-mail的发送。

⑾手机通信与设置:掌握拨打电话、收发短信的方法, 了解手机声音与手机闹钟的设置方法。

3.教学方法改革

在进行《Android程序设计》教学时, 改变了传统的讲授法, 主要采用了以下几种教学方法。

⑴互动启发教学法, 提高学生的学习积极性。传统授课方式以教师为主体, 以教师讲授为主, 学生容易走神或者导致课堂气氛沉闷, 教学效果不理想。而互动启发教学方法通过教师与学生的互动交流, 可以很大程度上提高学生的学习积极性。学生在编写Android应用程序中, 肯定会遇到问题、错误。在这个时候, 如果教师听之任之, 学生积累的问题越来越多, 从而导致厌学;如果教师在这个时候与学生进行互动交流, 引导学生发现问题、解决问题, 或者鼓励学生对所学的内容进行拓展、延伸, 则可以很大程度地增加学生的学习动力, 提高学习积极性, 从而达到一个良好的教学效果。

⑵采用案例教学法, 以用促学。在过去的课堂教学中, 由于一个新概念的提出一般比较孤立, 使学生对新概念的理解往往不透彻。为了提高学生对该课程的认知, 在《Android程序设计》课程中引入了大量的案例。在课堂教学中, 采用案例教学法, 每一节课的内容都有对应的案例。在课堂讲解中设定每一堂课的学习目标, 以启发、讨论方式进行教学互动, 调动学生的学习自主性和主动性, 引导学生积极地思考解决问题的方法。紧紧围绕案例开展教、学、做, 使各知识点易于理解、易于掌握、易于应用, 使学生得到“学以致用”的感受, 以案例驱动的教学过程可引导学生不断地“以用促学”。

⑶采用项目驱动教学法, 提高学生的团队意识。项目教学法, 是指师生通过共同实施一个完整的“项目”工作而进行的教学活动, 是一种以培养实用型人才为直接目的的人才培养模式[4]。现在应用软件的开发不再是以小作坊的形式来开发, 而是由一个团队集体来完成, 团队协作意识在软件开发团队中起到至关重要的作用。为了提高学生的团队协作意识, 仅仅依靠上述的案例教学法是远远不够的。所以, 在课堂教学之后的实训环节, 将学生3-4人分为一个小组, 并且指定组长充当项目经理, 其余学生充当自己适合的角色, 进行角色扮演, 共同完成该实训项目。通过这种方式, 可以快速培养学生的团队协作意识。

实践环节改革

在《Android程序设计》课程中, 我们制订了以实践为主, 提高学生实际动手能力的教学宗旨。为了达到这一目的, 采取了以下措施如下。

1.增大实践教学环节所占比例

在实践教学环节中, 学生是实践的主体, 教师起主导作用, 教师只有激发学生实践的兴趣, 使学生采用自主发现加自主探索的方式进行实践, 才能取得较好的效果。改革传统的实验教学模式, 变“被动实践”为“主动实践”。在实践教学内容组织上, 分为两个阶段实施完成。首先设计基本实验和验证性实验, 要求学生在规定的时间内进行, 由授课教师认真组织, 现场指导。通过教师与学生的交流, 使学生加深对所学知识的理解和掌握;第二个阶段是实训环节, 采用一个完整的项目案例, 来培养学生的综合能力。教师只提出实验目的、要求、注意事项等, 不过细的规定条条框框, 实验方法和步骤由学生自己拟定, 这样学生有充分的自由度, 有助于培养学生的创新意识及团队协作意识。

2.改革考核方式, 重视能力培养

对本课程的考核调整为以实践项目为主、理论纸质考核为辅的考核模式, 注重考查学生对知识的实际应用能力, 课程考核围绕以能力为中心。在理论及综合项目实训部分, 采用复合式考核方式, 即通过课堂教学过程考核、实训项目考核、单元测试考核、期末理论、项目考核相结合的方式。这种考核模式是对学生能力, 实践能力, 创新能力的综合考查, 同时在很大程度上避免了有的学生平时不好好学习, 试图希望通过期末的临时抱佛脚的方式过关的现象以及学生中大量存在“高分低能”现象。

通过上述改革措施, 《Android程序设计》课程吸引了很多学生的兴趣, 并且取得了一定的教学成果。学生的学习积极性明显提高, 学生不仅积极完成课堂上的任务, 而且积极组织及参与各种形式的讨论, 学习气氛浓厚, 并且能够完成一些简单的Android应用程序的开发设计。

小结

本文从教学计划、教学内容、教学方法以及实践环节几个方面对《Android程序设计》课程的改革进行初步探讨。在教学计划方面:开设了多门与Android程序设计相关的课程;在教学内容方面:结合实际情况, 精选教学内容, 并制订每个章节的具体教学要求;在教学方法方面:教学过程中采用互动启发教学法、案例教学法、项目驱动教学法各种教学方法, 提高教学质量;同时增大实践环节, 改革考核方式, 重视能力培养。但是, 随着移动平台技术的更新和发展, 该课程的教学以后还会遇到更多的问题, 对于上述的措施还需要根据实际情况进行进一步的完善和改革, 例如增加新的教学手段和方法等, 逐步探索出一套行之有效的、适合该课程教学的方法。

摘要:随着智能手机的迅速普及, 移动平台的应用需求越来越多, 应用程序的开发人才需求量也越来越大。如何培养满足市场需求的人才, 成为目前很多高校关注的话题。本文以培养应用型人才为目的, 对《Android程序设计》课程改革进行初步探索, 主要从教学计划、教学内容、教学方法以及实践环节几个方面进行探索。通过对该课程的初步改革, 学生的学习积极性与实践能力得到明显提升。

关键词:Android程序设计,教学改革

参考文献

[1]周红波.案例教学在《Android应用开发》课程中的应用研究[J].计算机光盘软件与应用, 2012 (9) :213-214.

[2]罗斯静.论高等教育课程及其改革[J].科教导刊 (上旬刊) , 2012 (2) :62.

[3]金萱.高职课程改革的研究与探索[J].天津职业院校联合学报, 2012, 14 (2) :7-11.

摘 要:随着智能手机的快速普及,智能手机操作系统市场风生水起。为了方便在校学生可以随时随地查看课程,一种高效的办法就是将课程表做成应用程序拓展到用户的终端设备上,并且提供一些辅助功能。因此,智能手机应用软件及其需要的服务将有广阔的开发前景。

关键词:Android;智能手机平台;课程表;开源

中图分类号:TP393 文献标志码:A 文章编号:1673-8454(2014)06-0082-03

一、引言

在智能手机系统群雄纷争的时候,2008年Google推出了一款名为Android的开源智能手机操作系统,它采用Linux内核,开放手机联盟(OHA)成员可以任意使用和修改SDK包,系统开源性使其具有良好的拓展性。这款软件包括了操作系统、用户界面和应用程序,即智能手机工作所需要的全部软件。Android的最大特点是其开放性的体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图像组件、多媒体支持功能及其强大的浏览器。因此,对于软件从业人员来说,Android平台具有无限的吸引力。

本文在分析讨论Android手机软件开发技术原理的基础上,设计并实现了能为用户提供更好的基于Android平台的课程表。

二、系统需求分析

本应用是一款简单的Android课程表,首先课表支持查看课程的功能,因为数据比较小,采用了XML存储模式。其次,课表具有修改课程的功能,便于课程改变的应对,以及清空课表,为循环使用提供方便。在Title项设计了点击查询当日天气的功能。由此可以得到功能图1,程序流程图2。

三、系统功能模块概述

系统分为4个功能:

1.显示主界面

主界面显示各个按钮,以及动态显示本周的课程,主界面将Title隐藏了起来,取而代之的是自己设计的Title,将他们整合起来。另外,主界面要负责将XML数据调入内存中。

2.修改课程功能

修改课程功能,通过用户点击课程后,弹出一个Dilog,用户可以在Dilog中修改本课程的上课时间、代课老师、课程名称以及备注信息。然后将其重新回写到XML文件中,方便下次启动时,课程被永久修改。

3.清空课表功能

清空课表功能,当用户点击了清空课表,将清除所有科目的上课信息属性,课表将被置空。用户可以重新编辑课表。

4.天气查询功能

天气查询功能放置在Title项中,节省主界面的空间,Title和主界面搭配在一起,设置按钮监听,当Title按钮被点击时,从网上获取今日的天气情况,并显示在Title栏中。

四、实现技术及工具

Android提供了免费且跨平台的整合开发环境。采用JAVA语言结合Android编程的规则来编写程序。开发Android应用,需要以下硬件及软件支持:

1.操作系统。Windows XP ,Mac OS X(一个基于UNIX核心的系统)和Linux三种方式,本文使用了Windows XP的操作系统来开发。

2.JDK 5 或者 5以上版本。JDK是JAVA的开发环境,必须有了JAVA的开发环境才能开发JAVA程序。这里采用了JDK 7这个版本。

3.Eclipse IDE ,一个多用途的开发工具平台。Eclipse功能十分强大,可搭载其他扩成套件来开发其他项目,如网站开发、ERP开发等。Eclipse版本采用了3.7.0版本。

4.ADT, 一款基于Eclipse的扩充套件。

5.Android SDK,Android程序开发套件,包含了Android手机的模拟器,有了它你就可以在虚拟机中查看调试程序,方便很多。

五、应用程序设计

1.数据存储结构设计

数据采用了面向对象的思想去存储数据,因为数据量比较小,采用了XML文件来存储数据。数据以day标签为每一个数据对象,每一个day标签有多个属性,用来记录数据。数据的属性有Teacher、startTime、endTime、index、weekday、valuetext、classname。当程序启动时,把属性封装成对象,完成操作。

2.主视图设计

Android代码的编写,首先编写主界面的布局文件,每一个Activity文件会对应一个Layout的布局文件,由于在Android中表格布局无法分列,布局起来十分困难,而线性布局也可以做成表格,所以,最终选择了用线性布局来布局主视图。布局分为两大块,在一个总线性布局中首先套用了两个小的线性布局,如图3所示。

左侧的小线性布局放置不同的星期按钮,通过点击按钮来修改右边布局中对应星期的课程。右边的布局中,套用一个表格布局来约束各空间的比例,分出来每一行来存放和显示不同的课程、时间信息。再配以背景的美化,预期效果与最终效果对比如图4所示。

至此,主视图的设计完成,再在Activity中配置相应按钮的动作即可。在主视图创建时,程序读取xml数据载入视图中对应的控件,点击左侧的按钮会改变右侧控件的属性,从而查看每天的课程。

3.修改功能设计

修改功能设计时,需要另起一个Activity,与之对应需要另外建立一个Layout的布局文件,这里采用了Dilog的窗口。Activity的相互启动,需要用到Intent(意图)模式,意图中可以存放需要传递的参数。当点击要修改的课程时,程序会触发动作,来生成一个Dilog完成修改操作。根据要修改的属性,Dilog也采用了线性布局,其中包含开始时间、结束时间、课程名称、教师姓名,以及这节课需要的一些备注信息等属性。除了两个时间以外,其他的属性均使用了文本编辑条,而开始时间和结束时间,为了得到更好的用户体验采用了Android提供的Timepicker控件,它是一个时间选择的控件。当控件的时间发生改变,它会调用相应的OnTimeChangedListener()函数,在这里可以接收得到时间参数,并做相应的处理。endprint

4.天气查询功能设计

天气查询功能,为了节约主界面的空间,将其放在自定义的Title中。自定义的Title含有3个控件,一个用于显示接收的天气信息,一个是Spinner控件,用于选择需要查询的城市,以及一个确定按钮。需要注意的是,Title无法和主界面的线程跑在一起,必须要新起一个线程来处理数据,也就是说,整个应用启动的时候,有2个线程同时在跑,一个是主界面的线程,一个是Title线程用来监听是否触发了Title的操作。应用程序的界面是由2个界面构成。而线程之间传数据,也必须用一定的格式来传,Title线程的数据,在主线程中无法直接调用,必须用特定的方式获取。Spinner空间类似于一个listview控件,不同的是,它将弹出一个Dilog用来选取对应的Item。

整个Title的显示效果如图5所示。

图6是点击查询天气按钮后显示的效果。

数据取自www.webxml.com.cn网站,这个网站免费提供一些信息查询的功能,返回的方式都以XML文件的格式返回,接收到返回文件后,只需自己解析读取所需内容即可。

六、应用程序测试

1.视图功能测试

测试环境首先在搭建环境中的虚拟机进行测试,所用虚拟机版本为API 15,即Android 4.0.3的版本,屏幕尺寸为QVGA。测试主视图整体显示效果正常;点击不同星期,显示不同课程,显示正常;点击Title可以切换不同的城市查询天气,显示正常。

2.改课及清空课表功能测试

修改课程功能测试,显示效果正常;测试清空课表功能,课表已被清空成功,功能测试正常。

3.实体机测试

实体机测试选用了两部不同品牌的手机,分别为摩托罗拉ME525,操作系统为Android 4.0,屏幕尺寸3.7英寸,像素为854 x480;和联想A790e,操作系统为Android 2.3.0,屏幕尺寸4英寸,像素800 x 480。经过多次实体机测试,显示功能正常,修改清空功能正常,查询天气功能正常,无发现BUG点。具体如图7所示。

七、结束语

随着更多大规模的公司加入Android市场,应用程序会越来越多,涉及方方面面,这样势必会造成应用程序的逐渐饱和。在这种情况下,应用程序会更多的将目光放在用户体验上,一款应用程序的大面积普及,势必建立在良好的用户体验上。

简洁、易懂、方便操作将会提升应用程序的普及率。本文介绍的Android移动课程表还有许多可扩展功能,它可以和学校教务处结合在一起,从而拓展出更多的实用功能,例如查看喜爱教师的课程,从而可以自由的安排上课时间,查询同学上课安排等等一系列更加生活化的功能。

通过上述Android应用程序的编写,可以切身了解Android开发的各种结构步骤和Android的系统架构模式,从而对Android的软件开发得出如下收获:

Android应用程序开发十分方便易学,在开源的基础上,设计者有了天马行空的设计方式,不会拘泥于固定模式的开发,有助于语言的进步。Android提供的丰富的API使得开发者开发应用程序不用再考虑下层业务,开发起来高效快捷。

Android 应用程序的开发对于有编程经验的人来说十分易懂,从而带动了开发市场的活跃。加之其跨平台的兼容性,开发的便捷性,大大降低了程序对开发人员人数的依赖性,能够节省大量的成本。

而且,Android开发的应用安装在独立设备之上,降低了像Web这样的多设备连接处理时产生错误的可能性,避免了许多不必要的麻烦。多设备连接更多的会出现预测不到的意外情况,而独立设备方便携带,不会产生多设备连接时的信号冲突。搭配更新周期短的硬件设备,Android应用将会占据市场的核心地位。

参考文献:

[1]赵朋飞.智能手机操作系统Google Android分析[J].科技视界,2011(8).

[2]刘平.Android手机访问服务器的一种数据交互方法[J].电子设计工程,2010(9):96-102.

[3]李佐彬等.Android开发入门与实战体验(附光盘1张)[M].北京:机械工业出版社,2010.

[4]韩超,梁泉.Android系统原理及开发要点详解[M].北京:电子工业出版社,2011.

实验目的:

本实验的目的是使学生深入了解Android程序框架结构、了解和掌握Android界面设计和界面编程。通过程序设计,掌握常用界面控件、菜单、以及界面事件的响应。

实验要求:

设计程序实现一个电子菜单,应具有显示菜单功能和选菜功能。通过选择,将选中的菜单选项在界面做显示,如下图:

[实现提示]

1、建立Android工程,其中 工程名称:MenuSelect579 应用名称:MenuSelect579 包名称:cn.edu.bistu.dj1001.MenuSelect579 Activity名称:MenuSelect579

2、工程建立完毕后,进行相应界面设计,再编写Java文件

程序源码

package cn.edu.bistu.dj1001.MenuSelect579;import android.app.Activity;

import android.os.Bundle;import android.view.ContextMenu;import android.view.ContextMenu.ContextMenuInfo;import android.view.Menu;import android.view.MenuItem;import android.view.View;import android.widget.TextView;public class MenuSelect579 extends Activity {

/** Called when the activity is first created.*/

TextView LabelView = null;

public void onCreate(Bundle savedInstanceState){

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

LabelView =(TextView)findViewById(R.id.label);registerForContextMenu(LabelView);

}

final static int CONTEXT_MENU_1 = Menu.FIRST;

final static int CONTEXT_MENU_2 = Menu.FIRST+1;

final static int CONTEXT_MENU_3 = Menu.FIRST+2;

@Override

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo){

menu.setHeaderTitle(“今日菜单”);

menu.add(0, CONTEXT_MENU_1, 0,“宫保鸡丁”);

menu.add(0, CONTEXT_MENU_2, 1,“干煸豆角”);

menu.add(0, CONTEXT_MENU_3, 2,“鱼香肉丝”);

}

@Override

}

public boolean onContextItemSelected(MenuItem item){

} switch(item.getItemId()){

case CONTEXT_MENU_1: LabelView.setText(“宫保鸡丁”);return true;case CONTEXT_MENU_2: LabelView.setText(“干煸豆角”);return true;case CONTEXT_MENU_3: LabelView.setText(“鱼香肉丝”);return true;} return false;

程序运行结果:

实验心得体会:(可选)

1、Android SDK的安装;

2、ADT的安装和配置;

3、Android 模拟器的配置。

二、编写第一个Android程序───Hello World(1学时)

1、创建一个Android应用程序的步骤;

2、Android 应用程序目录结构;

3、AndroidManidest.xml文件的作用;

4、Android相关资源文件的作用。

三、Activity及Activity和Intent(2学时)

1、Activity的主要作用;

2、创建一个Activity的方法;

3、在AndroidManifest.xml文件中的注册应用Activity的方法;

4、在Activity中添加控件的方法;

5、多个Activity之间的切换;

6、Intent的基本作用;

7、在一个Activity中启动另一个Activity的方法;

8、使用Intent在Activity中传递数据的基本方法。

四、常见控件的使用方法(基础)

1、TextView的使用方法;

2、EditText的使用方法;

3、Button的使用方法;

4、Menu的使用方法。

五、Activity的生命周期(2学时)

1、Activity的七个周期:

① OnCreate();② OnDestroy();③ OnPause();④ OnRestart();⑤ OnResume();⑥ OnStart();⑦ OnStop();

2、Task的基本概念;

3、Activity和Task之间的关系;

4、对话框风格的Activity的使用方法。

六、Activity的布局(3学时)

1、LinearLayout的使用方法;

2、TableLayout的使用方法;

3、LinearLayout和TableLayout的嵌套使用;

4、RelativeLayout的使用方法(重点、难点)

七、常用控件是使用方法二(2学时)

1、RadioGroup和RadioButton的使用方法;

2、CheckBox的使用方法;

3、Toast的基本用法。

4、ProgressBar的使用方法;

5、ListView的用法。

八、Handler的使用方法(2学时)

1、Handler的基本概念;

2、Handler的基本用法;

3、使用Handler更新ProgressBar

4、Handler与线程;

5、Bundle的用法;

6、在新线程中处理消息的方法。

九、SQLite使用方法

1、SQLite介绍;

2、SQLiteOpenHeper使用方法;

3、使用adb访问SQLite

4、增、删、改、查。

十、Android文件下载

1、使用HTTP协议下载文件;

2、将下载的文件写入SDCARD。

十一、Content Provider初步(2学时)

1、Content Provider的基本概念;

2、Uri;

3、Content Provider的实现方法。

十二、XML文件的解析方法

1、什么是SAX;

2、SAX的基本原理;

3、SAX常用接口;

4、SAX解析。

十三、广播机制(2学时)

1、Android的广播机制(图鉴);

2、BroadCastReceive的作用;

3、BroadCastReceive的编写方法;

4、BroadCastReceive的生命周期。

5、注册BroadCastReceive的方法;

6、Android内置BroadCastReceive Actions。

十四、WIFI网络的使用

1、什么是WIFI;

2、获取WIFI网卡的状态;

3、操作WIFI所需要的权限;

4、改变WIFI网卡的状态。

十五、Socket编程

1、什么是Socket;

2、Socket基本通信模型(见图);

3、使用基于TCP协议的Socket;

4、使用基于UDP协议的Socket。

十六、Service

1、Service是什么;

2、Service不是什么;

3、Service的生命周期;

发表评论

培训网 备案号:渝ICP备2025060457号-5