基于android的天气预报的设计与实现

目录

  1. 应用开发技术及开发平台介绍
  2. 应用需求分析
  3. 应用功能设计及其描述
  4. 应用UI展示

①开发技术:

  本系统是采用面向对象的软件开发方法,基于Android studio开发平台,以Android作为本系统的开发语言实现音乐播放器预定的需求功能。

  ②平台介绍

  • 硬件平台

  CPU奔腾双核 (主频2.0GHz)

  内存1G以上

  64或32位PC机

  500G硬盘

  • 软件平台

  操作系统:Windows XP \ Win7\Win8\win10

  开发工具:Android Studio

本软件占用系统空间小,能满足用户对常见音频格式文件的播放要求,还具有歌曲、歌词下载等功能,界面美观交互性好,易于用户理解操作,且不依赖于其它软件,消耗资源少易维护,程序有较好的健壮性和正确性。运行该软件所需的坏境配置不高,能满足绝大多数用户的需求。

②应用需求分析

  现有的4G技术和移动互联网技术的快速发展,智能手机功能的不断增强,让基于Android平台的查询需求越来越多。本软件就是利用现有的网络快速获取网络上的天气信息并显示到手机终端上,为用户提供实时的天气查询和近期天气查询服务,为工作、出行等带来便利。通过Web Service等技术让用户体验到前所未有的移动计算。

③应用功能设计及其描述

  1、总体设计

  本软件是一个App Widget应用程序,启动程序后可以进行城市、更新频率的设置,可以通过图片和文字显示当前和未来的天气状况,包括温度、湿度、风向和雨雪情况等。这些天气数据是通过后台服务获取的,这个后台服务可以按照一定的时间间隔,通过开源API提供的服务获取天气预报信息,并将天气信息保存在数据库中。该软件的基本功能需求有:

  (1) 启动App Widget应用程序;

  (2) 设置界面:对要显示天气预报的城市及更新频率进行设置;

  (3) 显示界面:通过文字和图片显示当前的天气情况,包括日期、时间、城市、最高温度、最低温度、当前温度等。

  (4) 详细界面:在显示出“显示界面”上所有信息的同时用列表的形式显示当天的天气情况。

  2、数据库设计

  本软件中有两部分数据需要存储,一个是显示页面的数据,另一个是详细页面的数据。但是数据量都不是很大,因此可以选择SQLite数据库作为存储数据的方法,建立数据库forecasts.db,并且建立两张表weather_widget和weather_forecast,分别存储显示页面的数据和详细页面的数据。

  3、功能模块设计

  从功能需求上分析可以看出,整个应用程序应划分为4个模块,分别是程序启动、用户界面、后台服务和数据库适配器,各模块之间的关系如下图所示:

  

  从模块结构图中不难看出,后台服务是整个应用程序的核心,主要是“数据获取模块”,负责周期性的从开源API获取天气信息。后台服务在程序启动时就由AppWidgetProvider启动,也可由用户界面通过startService()进行启动,启动后的后台服务将一直保持运行状态。

用户界面是从数据库中获取天气信息,而没有直接通过网络访问开源API的天气数据。这样设计,一方面可以避免因网络通信不畅而造成界面失去响应;另一方面,后台服务可以及时更新数据,以保证数据的准确性。数据库适配器封装了所有对SQLite数据库操作的方法,用户界面和后台服务会调用它来实现对数据库的操作。

④UI展示

原文地址:https://www.cnblogs.com/zhuangshounaZSN/p/10043234.html

时间: 11-29

基于android的天气预报的设计与实现的相关文章

基于Android平台的会议室管理系统具体设计说明书

会议室管理系统具体设计说明书 第一部分  引言 1.编写目的 本说明对会议室管理系统项目的各模块.页面.脚本分别进行了实现层面上的要求和说明. 软件开发小组的产品实现成员应该阅读和參考本说明进行代码的编写.測试. 1.2 背景 说明: A.软件系统的名称:会议室管理系统 B. 任务提出者:内蒙古大学计算机学院 开发人员:魏晓蕾 本项目将实现基于Android平台的会议室管理系统的原型部分,而且在该原型的基础上进行功能的扩展和需求的界定,终于完毕的版本号将在全国范围内推广使用. 提供会议室管理功能

基于Android平台的i-jetty网站智能农业监控系统

基于android平台i-jetty网站的智能农业监控系统 摘要:传统的监控系统,一般是基于PC的有线通信传输,其有很多不足之处,如功耗较高.布线成本高.难度大,适应性差,可扩展性不强,增加新的通信线路需要再次布线施工,而且维护起来也比较麻烦,一旦线路出问题,需要繁琐的检查.而嵌入式Web监控系统是基于物联网技术,其无线通信技术具有成本低廉.适应性强.扩展性强.信息安全.使用维护简单等优点. 智能农业中,种植大棚是通过大棚内安装温湿度以及光照传感器,来对农作物的环境参数进行实时采集,由Web监控

基于 Android NDK 的学习之旅----- C调用Java

http://www.cnblogs.com/luxiaofeng54/archive/2011/08/17/2142000.html 基于 Android NDK 的学习之旅----- C调用Java许多成熟的C引擎要移植到Android 平台上使用 , 一般都会 提供 一些接口, 让Android sdk 和 jdk 实现. 下文将会介绍 C 如何 通过 JNI 层调用 Java 的静态和非静态方法. 1.主要流程 1.  新建一个测试类TestProvider.java a)       

【转】基于 Android NDK 的学习之旅-----数据传输(引用数据类型)

原文网址:http://www.cnblogs.com/luxiaofeng54/archive/2011/08/20/2147086.html 基于 Android NDK 的学习之旅-----数据传输二(引用数据类型)(附源码) 基于 Android NDK 的学习之旅-----数据传输(引用数据类型) 接着上篇文章继续讲.主要关于引用类型的数据传输,本文将介绍字符串传输和自定义对象的传输. 1.主要流程 1.  String 字符串传输 a)         上层定义一个native的方法

【源代码】基于Android和蓝牙的单片机温度採集系统

如需转载请标明出处:http://blog.csdn.net/itas109 QQ技术交流群:129518033 STC89C52单片机通过HC-06蓝牙模块与Android手机通信实例- 基于Android和蓝牙的单片机温度採集系统 整个project下载:http://download.csdn.net/detail/itas109/7539057 当中包含. 1.下位机电路原理图 2.下位机採集温度.控制发送.自己主动纠错代码 3.Android端接收温度并显示代码 文件截图 这个是我当年

基于 Android 的 3D 视频样本代码

作者:Mark Liu 下载样本代码 简介 在Android 中,创建一个能够播放视频剪辑的应用非常简单:创建一个采用 3D 图形平面的游戏应用也非常简单.但是,创建一个能够在 3D 图形对象上播放视频的应用却不容易.本文介绍了我为应对该挑战创建的应用.该应用可在 3D 平面上渲染视频,并支持用户以交互的方式在视频平面上播放. 该应用需要解决三大实施问题: 如何构建代码以支持用户在播放视频时变更 3D 平面? 虽然 Android 中默认的 MediaPlayer 配备了全面的播放操作,但是难以

Android开发自学笔记(基于Android Studio1.3.1)—1.环境搭建

一.引言    本套学习笔记的开发环境是Windows 10 专业版和Android Studio 的最新版1.3.1. Android Studio 是一个Android开发环境,基于IntelliJ IDEA. 类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试.    笔者没有怎么使用过Eclipse做Android学习,但是基于Android Studio类似于VS的项目架构,还是偏爱Android Studio这个IDE,没

基于Android 4.4 开发的多窗体系统 开放源代码

Hi, 这是我基于Android 4.4开发的多窗体系统,还有非常多不足,还请多多不吝赐教啊,代码已经所有开源. 视频地址 源代码地址 Done: 1. APP以窗体化显示 在 PhoneWindowManager::layoutWindowLw() 中通过packageName过滤,使指定的APP以非全屏尺寸显示,由于一个APP一般是以一个task为单位,显示多个activity,因此採用packageName过滤的方法. 2. 多个APP同一时候处于 onResume 状态 改动AMS中通知

基于Android的闹钟的软件

一.本课题要求:设计一个基于Android的闹钟的软件. 实现的功能有:能通过界面设置闹钟的启动条件建立后台服务进程,当满足触发条件时,闹钟响应相应事件. 二.需求分析 该课题实现在手机操作系统Android闹钟提醒功能,携带方便,使用起来灵活.快捷.省心,是一款实用的手机软件.“手机闹钟”可以在后台运行,且能和普通闹钟一样设置多个位置闹铃,有良好的人机交互界面,可对其编辑.启用或禁用,关键在于可以自定义设置取消闹钟的操作. (1)系统体系结构包括:添加闹铃.设置时间.重复等,闹铃提醒方式,返回

Android自定义遮罩层设计

在做网页设计时,前端设计人员会经常用到基于JS开发的遮罩层,并且背景半透明.这样的效果怎么样在Android上实现呢?这个实现并不困难,先来上效果图: <ignore_js_op> 20121029222704.jpg (29.46 KB, 下载次数: 61) 下载附件  保存到相册 2013-5-3 15:29 上传 本实例源码下载:点击下载 PopMaskViewActivity代码: [mw_shl_code=java,true]package com.sunchis.demo; imp