# 我要做的是Google天气客户端

一、Need(需求):

1、 功能性需求分析

天气预报客户端,顾名思义就是为用户提供实时准确的天气信息,方便用户出行生活。根据用户日常需求,软件实现后所达到的功能有:

载入界面:初始化资源,显示查询界面,有两种查询选项

(1)按钮查询:针对一些常用城市,如北京、上海等,为方便用户只要在预定义的城市中寻找用户所在城市并选择,点击确定按钮即可查询到天气信息。

(2)输入查询:对每个城市都适用的查询方式。在城市填写空白栏中输入所需城市的名字,点击确定按钮即可查询到天气信息。

天气查询结果有两种:一种是实时天气信息,信息结果比较详细,除温度天气外还可以提示湿度、风向等信息,这样使天气信息更加完善;一种是天气预报信息,提供未来几天的天气状况,方便用户的出行预判。

现在天气预报软件的功能越来越完善,出了上述需求外,还提供如穿衣指数,空气污染程度等功能,因此,在完成基本功能的基础上,我会考虑增加更丰富的预报信息。

2、 非功能性需求分析

(1)低资源消耗

Google天气客户端对资源的耗费主要用在解析android xml上,为了节省对手机内存等资源的占用,结合天气客户端的特点。我打算在设计软件时使用SAX解析器。

(2)易用性

易用性决定着软件的市场。天气预报客户端的用户并不希望一层层的寻找打开软件来查询天气,而是希望一打开手机就能看到。因此我们需要做个widget,即一个天气预报小窗口,把它放在主桌面,用户对天气情况一目了然。

二、Approach(方法):

开发环境

(1)应用平台: Android 手机 

(2) 开发工具: Android studio 

Android Studio 是一个Android开发环境,基于IntelliJ IDEA。Android Studio 提供了集成的 Android 开发工具用于开发和调试。

   系统模块划分与操作流程

  CityWeather:天气查询主界面

  ConstData:存放预定义的城市

  SingleWeatherInfoView:显示天气预报视类图

   GoogleWeatherHandler :解析xml信息

  WeatherCurrentCondition:设置当前天气类

  WeatherForecastCondition :设置预报前天气类

  WeatherSet  :天气信息汇总

三、Benefit(收益):

1. 功能

本项目基于Android平台开发天气客户端,使用户可以随时查询当前及未来几天天气。

2. 成本

  由于Android Studio在IDEA的基础上提供:基于Gradle的构建支持,Android 专属的重构和快速修复,提示工具以捕获性能、可用性、版本兼容性等问题,支持ProGuard 和应用签名,基于模板的向导来生成常用的 Android 应用设计和组件,功能强大的布局编辑器。缩短了开发周期,降低了开发难度,大大节约了成本。

此外,我们使用google天气预报当web服务端。由于google天气预报是免费提供商,因此这个软件的成本能控制的很低。对用户来说很实用。

四、Competitors(竞争力)

  如今随着智能电子设备越来越普及,通过手机,平板来查询天气是一种趋势。它比起传统的报纸、电视等媒体在实时传播分享上有着先天的优势。本项目基于Android平台开发的google天气客户端,功能齐全、操作简单,使用户可以更加方便、准确的查询天气。

Android实践项目汇报(一)的更多相关文章

  1. Android实践项目汇报

    Android实践项目:推箱子 推箱子是一款来自日本的古老游戏,其设计目的是训练人的逻辑思维能力.游戏场景一般是设定在空间狭小的仓库中,要求把箱子摆放到指定位置.这就要求玩家巧妙的运用有限的空间和通道 ...

  2. Android实践项目汇报总结(上)修改

    微博客户端的设计与实现(上) 第一章 绪论 1.1课题背景 微博可以说是时下最受人们所喜爱的一种社交方式,它是一种通过关注机制分享简短实时信息的广播式的社交网络平台.通过微博我们可以了解最新的时事新闻 ...

  3. Android实践项目汇报(二)

    Google天气客户端 本周学习计划 学习布局控件和XML解析的相关知识. 看懂程序代码. 把借鉴代码成功导入到Android Studio中并运行成功. 实际完成情况 我学习到布局控件XML在res ...

  4. Android实践项目汇报-改(一)

    Google天气客户端NABC Need(需求):  功能性需求分析 天气预报客户端,顾名思义就是为用户提供实时准确的天气信息,方便用户出行生活.根据用户日常需求,软件完成后点开,载入界面,显示查询界 ...

  5. Android实践项目汇报(总结)-修改

    天气客户端开发报告 1系统需求分析 1.1功能性需求分析 天气预报客户端,最基本就是为用户提供准确的天气预报信息.天气查询结果有两种:一种是当天天气信息,信息结果比较详细,除温度.天气状况外还可以提示 ...

  6. Android实践项目汇报(总结)

    天气客户端开发报告 1    系统需求分析 1.1功能性需求分析 天气预报客户端,最基本就是为用户提供准确的天气预报信息.天气查询结果有两种:一种是当天天气信息,信息结果比较详细,除温度.天气状况外还 ...

  7. Android实践项目汇报(四)

    全国天气客户端 本周学习计划 添加修改功能,完成项目 实际完成情况 1.成功显示当天及后几天的天气信息 通过修改chaxun.java程序,比较JSON数据格式中JSONObject("to ...

  8. Android实践项目汇报(三)

    Google天气客户端 本周学习计划 调试代码使之成功运行并实现天气预报功能. 实际完成情况 由于google取消api接口服务,天气源的传输.所以我换了一个使用 haoserver API接口的程序 ...

  9. Android实践项目汇报总结(下)

    微博客户端的设计与实现(下) 第四章 系统详细功能实现 本应用实现了如下主要模块:程序启动模块.登录授权模块.主界面显示模块撰写发表微博模块.用户发布信息模块.软件设置模块. 4.1程序启动模块实现 ...

随机推荐

  1. PyCharm安装配置Qt Designer+PyUIC教程

    原文写的不错,拿来大家都可以看一下 原文地址:https://www.cnblogs.com/lsdb/p/9121903.html https://www.cnblogs.com/tiankong2 ...

  2. QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查

    QtCreator 可以通过 Clang-Tidy 和 CLazy 对你的代码进行静态检查 打开你的工程,点击Analyze -> Clang-Tidy and CLazy 选择你想分析的 cp ...

  3. TortoiseGit的使用

    TortoiseGit只是一个外壳而已,它调用的是msysgit,相当于msysgit的windows gui而已,如果喜欢用git命令行,那就不需要安装它. 所以要先安装msysgit(window ...

  4. SqlServer 凭据

    一.理解索引的结构 索引在数据库中的作用类似于目录在书籍中的作用,用来提高查找信息的速度.使用索引查找数据,无需对整表进行扫描,可以快速找到所需数据.微软的SQL SERVER提供了两种索引:聚集索引 ...

  5. 自定义Metrics:让Prometheus监控你的应用程序

    前言 Prometheus社区提供了大量的官方以及第三方Exporters,可以满足Prometheus的采纳者快速实现对关键业务,以及基础设施的监控需求. 如上所示,一个简单的应用以及环境架构.一般 ...

  6. PHPExcel使用-使用PHPExcel导出文件-导出MySQL数据

    现在数据库里面有一组数据,我们将它按照不同的难度进行分sheet. 首先我们需要写一个mysql的配置文件- db.config.php(utf-8编码) : <?php $dbconfig= ...

  7. SQLite-创建、附加、分离数据库

    创建数据库 - $> sqlite3 DatabaseName.db 附加数据库 - sqlite> ATTACH DATABASE 'DatabaseName.db' AS 'Alias ...

  8. INT_MAX和INT_MIN注意事项

    版权声明:转载请注明出处 http://blog.csdn.net/TwT520Ly https://blog.csdn.net/TwT520Ly/article/details/53038345 I ...

  9. Andrew Ng-ML-第十九章-应用举例:照片OCR(光学字符识别)

    1.问题描述与 OCR pipeline 图1.图像文字识别流水线 首先是输入图片->进行文字检测->字符分割->字符识别. 这些阶段分别需要1-5人这样子. 2.滑动窗口 主要讲滑 ...

  10. [LeetCode] 827. Making A Large Island

    In a 2D grid of 0s and 1s, we change at most one 0 to a 1. After, what is the size of the largest is ...