代码改变世界

Android实践项目汇报(一)

2015-11-08 18:57  艾鸽  阅读(835)  评论(3编辑  收藏  举报

# 我要做的是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天气客户端,功能齐全、操作简单,使用户可以更加方便、准确的查询天气。