安卓android课程设计报告

时间:2024.4.20

湘潭大学课程设计报告

课    程    名    称______手机安卓开发_______

课    题    名    称______天气预报APP_______指    导    老    师______周唯___________

姓    名____黄柳________

      学    号___2012600719_________

    班   级____12计2班________

小    组______棒棒糖_______

  时    间____20##年1月26 日_____


一、    需求分析

(一)             引言

1.       编写目的

1.1      为用户提供一个显示天气预报的软件,可以根据百度地图显示用户需求的城市位置,以及用图标表示各城市对应的气象信息,可以简洁的表示出“晴、雨、雪”和“气温”气象信息。

2.      项目风险

2.1      (项目风险识别是指找出影响项目目标顺利实现的主要风险因素,并识别出这些风险究竟有哪些基本特征、可能会影响到项目的那些方面。)

2.2      联网收费视用户电话运营商的收费标准决定

2.3      手机或者无线信号不好时,可能无法连接或更新天气情况

3.      预期读者和阅读建议

3.1      预期读者:会使用已经安装安卓系统的手机或者平板电脑及其他移动设备的用户

3.2      阅读建议:读者应通过该文档可以了解相关项目的需求分析、使用注意事项以及可能存在的风险

4.      产品范围

2.2       手机,平板电脑,MP4,导航仪,上网本,电纸书等使用安卓系统的数码领域

(二)            综合描述

1.       产品的状况

1.1       Android是一种以Linux为基础的开放源代码操作系统,主要使用于便携设备。目前未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,最初主要支持手机。20##年由Google收购注资,并组建开放手机联盟开发改良,逐渐扩展到平板电脑及其他数码领域上。我们开发的相关项目正是一个在安卓平台上开发的软件,可以用这个软件来实现用户在一些简单的手持设备如手机或者平板电脑等上面及时的了解到用户所在城市的天气预报。

2.      产品的功能

2.1      天气信息获取

2.2      天气信息显示

3.     系统配置功能

3.1      用户类和特性

安卓平台用户:安卓新用户可以使用软件来了解用户所在城市的天气预报。熟悉安卓平台用户还可以选择对相关软件的系统按自己的喜好进行配置并保留自己的个性化系统配置。

安卓软件开发者:安卓软件开发者(喜好者)可以通过相关的开源代码来了解软件运行的原理。

3.2      运行环境

软件需要在支持安卓系统的可移动设备中正确安装才能正常运行。安卓版本需在2.2及以上,同时建议用户如果是在手机移动设备使用的话,需确保手机支持联网服务。

3.3      设计和实现上的限制

Eclipse是开发相关应用软件的首选集成开发环境,安卓开发环境首先需要安装支持java应用软件运行的java开发软件包(即JDK),然后安装集成开发环境Eclipse,最后安装Android SDK的Eclipse的ADT插件。

Android SDK和Eclipse的ADT插件是必须使用的。

软件支持高效、快速的数据存储方式,包括快速数据存储方式SharedPreferences、文件存储和轻量级关系数据块SQLite,可软件可以使用适合的方法对数据进行进程保存和访问。

3.4      假设和约束(依赖)

软件必须在安卓系统下才可以正常运行,若需要获取天气更新或者是短信服务,需确保用户的数码设备支持联网及短信服务。

(三) 外部接口需求

1       用户的手机设备可以支持联网。

2       用户界面

说明: D:\Documents\Tencent Files\391725857\Image\Group\}V_RSV}559GPCP)Q@4F@@@G.png

3       软件接口

软件提供轻量级的进程间通信机制Intent,实现跨进程组件通信。

4       访问硬件的API库函数通讯接口

4.1      HTTP 协议:有多种接口可以调用你可以用Java类库封装的HttpConnection 或者用Apach的开源项目的 HttpGet 或者HttpPost ,服务器端 需要 编写 Serlvet来响应客户端的请求。

4.2      Sokcet : 就是 服务器端 不断监听 双方约定好的端口号,客户端通过服务器IP去请求连接,连接成功后,得到Socket 的输入输出流,直接操作即可。

(四) 系统功能需求

天气信息显示和获取

功能描述:需有一个显示天气情况的用户界面,要求百度地图显示各城市位置(如:北京、长沙、广州等3-5个城市),以及用图标表示各城市对应的气象信息,表示出“晴、雨、雪”和“气温”简洁气象信息。

输入输出信息:

输入:当触摸某一城市对应的气象图标时,显示该城市当天的温度、湿度、风向和雨雪详细天气信息,并预报该城市后面几天的气象信息。

输出:气象信息的获取,从百度上获取天气预报信息,这些天气数据是通过后台服务获取的,这个后台服务可以按照一定时间间隔,并将各城市的天气信息保存到SQLite数据库中。

二、    概要设计

三、          Ui界面

我们的ui界面秉承着清新的风格开发出来的。

整个软件界面使用一个线性布局,让所有的元素从屏幕上方向下填充,并给整个线性布局进行权重划分。

线性布局的最上方是一个TextView,显示当前城市的名字,接着往下是一个相对布局,相对布局的左侧是天气的图片,右侧是三个天气相关的参数。

接着是一个线性布局,布局的左上方是三个TextView,分别显示“预报”,“趋势”,“指数”功能,通过点击相应的TextView,下方的一个线性布局展现不同的功能。

功能面板文字的下方是一个大的线性布局,用来显示未来三天的天气情况。在这个大的线性布局中,又含有三个小的线性布局,这三个小线性布局中包含了日期,天气图片和风力状况等(这些控件从上到下垂直居中显示)。

通过给整个XML文件中LinearLayout布局的的子级布局添加权重,让各个部分从上到下有序的显示,让当前城市名称在屏幕的上方显示,功能面板位于屏幕下方显示,以匹配不同尺寸屏幕,让软件的显示效果更好。软件的整体布局风格是清新,优美,大方。

说明: D:\Documents\Tencent Files\329076925\Image\Group\}V_RSV}559GPCP)Q@4F@@@G.png

四、          功能设计

功能上实现实时的获取天气信息,获取百度api返回数据,解析百度api返回的json数据,根据解析到的数据绘制气温趋势图,并将数据反馈到app上的相应的区域。

通过使用ViewPager类,来实现天气预报软件中多个城市间的无缝页面切换。

由于组员都缺少JAVA开发经验,对安卓开发也不熟悉,所以我们决定采用调用API的方法来实时获取不同城市的天气预报数据,在这次项目中我们将采用百度的车载API。通过HttpClient类和AsyncTask异步类来获取网络数据。最后通过Gson类来解析获取的网络数据,并给页面中的所有的布局空间设置id,在AsyncTask得到网络数据之后将这些数据同步到软件界面上,呈现给用户。

三、功能模块

        我主要负责监听程序的设计,监听用户按键,并进行相应的动作。

只要用户滑动面板,就切换到下一个城市,并获得下一个城市的天气数据, 显示在面板上。每隔15分钟自动更新天气数据。

主要代码如下:

下面的代码处理网络连接部分,用GSON解析网络上获得的Json网页:

下面代码访问网络:

四、心得体会

       通过这个软件的实现,我对Android编程有了更加浓厚的兴趣,对Android中的常用类和接口有了进一步的认识。对编程有了一种新的看法,编程在我的学习中不再是那样的枯燥无味,而是时时刻刻充满惊喜。虽然这是一个挺小的项目但它对我在编程方面起到了一种激励的作用。我会在此基础上更加努力做出更好的程序。


第二篇:如何学习安卓Android


Chris(克里斯)是一位来自波兰的Android应用开发者,最为一名非著名的开发者他开发的应用在Android Market上免费提供下载,并通过广告获得收入,最近他在自己的博客上面分享了从事Android开发带来的收入情况,并通过自己的经历给予 Android开发入门者非常忠实的忠告。作为国内从事Android开发的同行,[url=]APP虎[/url]第一时间发现并翻译了他的文章,以与广大Android开发者和即将进入Android开发的人们分享。很多人认为从事Android开发是一件赔本的买卖。 他们说,如果你想赚钱,你应该转向iPhone,iPad和所有其他的平台。但事实显然不是这样的,虽然从事Android开发并没有让我收入数千美元,但我的收入是稳定的,并且一直在增长。 尽管我并不是顶级的开发者,并且也没有任何应用被Android Market推荐过。 我只是成千上万名Android开发者之间默默无闻的一个,我的应用也不是那么的有名。 但这有什么好奇怪的呢?我所有的应用程序都是免费的,因为谷歌不允许来至我的国家(波兰)的开发者通过Android Market出售应用程序! 所以请你记住这些事实: 1 Android Market从来没有在Top的推荐位置推荐过我的应用程序 2 我只提供(主要是由于Android Market的限制)免费的应用程序 3 即使我能够在Android Market出售应用程序我也不会将它作为主要收入来源(我相信广告才是最主要的收入来源) 我所有的收入都来自应用程序中的广告。 这是它们在Android Market下载次数: 1 X-Ray Scanner(超过268000下载) 2 Cracked Screen(超过182000下载) 3 Virtual Drums (超过20000下载) 4 Daily Beauty Tips (超过11000下载) 5 Don’t push it (超过6 500下载) 6 WP Stats (超过4 000下载) 我从20xx年4月开始学习Android应用开发。并且在5月份便发布了我的第一个Android应用——WP Stats,它带给我几美元的收入。虽然我一直期待这个应用是我最受欢迎的应用,可惜它不是。在我已经发布的几个应用程序中,有很多比它更受欢迎。这里是我这几个月通过Android应用的总收入明细: ? 20xx年5月 - 4.92美元 ? 20xx年6月 - 138.87美元 ? 20xx年7月 - 538.26美元 ? 20xx年8月 - 920.00美元 ? 20xx年9月 - 1545.45美元 ? 20xx年10月 - 1059.31美元 十月份的收入看起来有所下降,但事实上发生这种情况是因为我没有着这一个月之内没有更新过应用程序。因此,大家可以看到,虽然收入不高,但是却是稳步增长的!并且这些收入全部来自广告。 即使这样,在我看来,从事Android开发给我带来的收入甚至远没有达到iPhone开发人员的水平。 但

不管怎么说,从事Android开发是非常有前途的,特别是对于新的应用点子有很大的发展空间。下面这些问题是在成为一名开发者之前常常困扰我的,所以,如果你有兴趣让Android开发成为您每月一笔收入来源,这篇文章可能对你有帮助。 我应该熟练的掌握JAVA——事实并非如此! 有很多专家都会非常严肃的说:“你必须要熟练的掌握Java,否则您做梦都不要期望成为一名Android开发者!”。 以我的情况来看,事实并非如此,我仅仅只是对于PHP非常熟练。 至于Java,我一直计划着在空余时间好好的学习它,但是我几乎没有空闲时间,所以我只只是略知皮毛。虽然我购买了《 Thinking in Java 》,但不幸的是到目前为止我还没有看完第三章。 所以,非常基本的Java的基础知识,这就是你所需要的! 我必须先熟练的掌握一种IDE(Eclipse或NetBeans)——这也是错误的! 另外,专家们还会说会说:“你必须要先完美的掌握一种IDE,否则在学习一门新的语言之前你便会掉队!”。专家们总是这么耸人听闻,看来,我不是真正的专家。因为我是在学习 Java Dalvik ( Android apps开发语言) 的同时才开始使用IDE(Eclipse)的。 所以,事实是你只需要在需要使用的时候再开始学习它,而那些IDE专家撰写的有关书籍在大多数情况下是浪费时间和金钱。 我需要拥有一台基于Android的手机——这(再一次)是错误的! 如果你拥有一台Android手机,那当然最好。甚至,你最好能够几台不同系统版本的Android手机来测试你的应用——如果你准备让他们在所有的Android设备中正常工作! 但是事实上这并不能解决所有的问题。 虽然一台真正的Android手机有利于你测试自己的应用程序,但在大多数情况下Android模拟器(包含在Android SDK中)便已经足够了。 那么什么是你真正需要的? 在我看来,想要成为一名真正的Android开发者,你需要拥有这些东西: ? Java基本知识(或任何其他面向对象语言) ? 免费下载的Android SDK(包含Android模拟器) ? 免费的IDE (例如Eclipse) ? 免费的Android文档 还有一些并不是必要的,但可能非常有用的东西: ? 一部Android手机(我的选择是HTC Desire ) ? 一本不错的Android开发入门书籍(我买了两本让我非常满意的书籍——《Hello, Android 》和 《Beginning Android 2》 所以,如果你真的想成为一名Android开发者——不要被砖家吓到。只要你肯努力学习它,你会惊奇地发现它是那么的容易!

更多相关推荐:
Android课程设计报告模板

移动互联网开发课程设计报告学生姓名学号专业计算机科学与技术班级设计题目学年学期季学期指导教师张华目录示例一二三1234四五设计题目1设计目的1设计原理及方案1使用的软件工具和环境1需求分析与概要设计1数据库设计...

android课程设计报告

目录1概述12项目设计与实现121欢迎界面1211界面布局1212功能实现222登陆界面2221界面布局2222功能实现223微信显示界面4231界面布局4232功能实现424主界面5241界面布局5242功能...

android课程设计报告

软件学院课程设计报告20xx学年第二学期学院软件学院专业软件测试班级1班姓名汤微任课老师欧阳文臣2目录1课程设计概况12上课笔记摘取13课程设计34心得总结8课程设计概况此次的课程设计的主要任务是设计andro...

Android课程设计报告

《移动应用技术》课程设计报告题目:基于Android的金源书店库存管理系统的开发与设计学生姓名:专业:信息管理与信息系统班级:指导教师:信息管理与工程系20##年5月28日基于Android的金源书店库存管理系…

基于android的简单用户注册系统课程设计报告

实验报告课程名称Android应用程序设计实验名称简单的用户注册登录系统学院电子信息工程学院专业计算机科学与技术班级姓名学号时间1目录第一章设计背景11引言312设计目的313设计要求314开发运行环境3第二章...

(开题报告)基于Android的日程表管理系统设计与实现--

基于Android的日程表管理系统设计与实现一课题的意义Android是由AndyRubin创立的一个手机操作系统后来被Google公司收购Google公司希望与各方共同建立一个标准化开放式的移动电话软件平台从...

Android课程设计论文

基于android平台的二维码识别软件的设计与实现目录1绪论311研究背景以及意义312Android平台特点313Eclipse简介314AndroidSDK简介315ADT简介42软件设计421系统概要设计...

【Android课程设计】邵利娟20xx42605

信息科学与工程学院课程设计报告书课程名称智能终端软件开发题目通讯录专业班级信息管理与信息系统一班姓名邵利娟学号20xx42605指导教师孙兴华20xx年7月5日基于Android平台的通讯录1设计题目题目基于A...

Android贪吃蛇课程设计报告

合实践报课程名称计算机系统综合实训课题名称贪吃蛇游戏开发专业计算机科学与技术班级学号姓名指导教师20xx年12月20日综告湖南工程学院课程设计任务书课程名称课题贪吃蛇游戏开发专业班级计算机1202学生姓名学号指...

android课程设计任务书模板

枣庄学院信息科学与工程学院课程设计任务书题目学号姓名专业课程android程序设计指导教师职称完成时间20年月20年月枣庄学院信息科学与工程学院制年月日课程设计任务书及成绩评定12345

贪吃蛇游戏报告毕业设计android

武汉理工大学华夏学院课程设计课程名称面向对象课程设计题目贪吃蛇游戏专业软件技术班级软件20xx班学号10225508318姓名王亭成绩指导教师20xx年11月29日至20xx年12月6日课程设计任务书设计题目贪...

张润萌 Android课程设计报告 华北水利水电大学

中州大学项目名称基于Android平台的自动闹钟学院名称信息工程学院班级名称电子信息工程组员姓名陈士涛20xx27010123张润萌20xx27010122王松立20xx27010116指导教师赵建勋项目要求项...

android课程设计报告(18篇)