2)定位功能:可以根据用当前所在位置显示当前区域的天气状况。
3)天气查询功能:点开每一个地区,都能够显示当日的天气、空气质量(包括aqi指数,
pm2.5指数)。4)天气预报功能:能够预报全国每一个地区以及未来七天的天气。
5)生活建议功能:生活建议功能中包括舒适度、洗车指数、运动建议三项指标,根据天气情况为用户提供合适的生活建议。
6)记录天气走向功能:能够显示同一城市一周每天早上八点温度折线图,从而反映该城市一周温度变化情况。
7)切换城市功能:用户可以根据需求同一时刻显示五个城市的温度,其中五个城市任选。应用功能如下图2.1所示
图2.1全国天气应用功能结构图
数据库的表结构设计图如图2.2所示:
图2.2数据库的表结构设计图
3 系统实现
3.1下载安装androidstudio并且运行模拟器
AndroidStudio是一个Android集成开发工具,基于IntelliJIDEA.类似EclipseADT,AndroidStudio提供了集成的Android开发工具用于开发和调试。是谷歌公司在2013年5月16日的I/O大会上推出的新的Android开发环境。
Android模拟器是AndroidSDK自带一个移动模拟器。它是一个可以运行在你电脑上的虚拟设备。Android模拟器可以让你不需使用物理设备即可预览、开发和测试Android应用程序。
3.2将代码托管到GitHub上
与苹果的iOS相比,android作为一个开源系统,主要借助GitHub托管代码,任何开源软件都可以将代码提交到Git上,如同一个巨大的“代码云”,上面有着海量优秀的android开源项目可以供我们学习。在编写程序的过程中我们同样需要将编写的代码托管到GitHub上
3.3创建数据库和表
创建数据库和表的作用是将从服务器获取到的各地的天气信息等等存储下来,android系统是内置数据库的系统,在androidstudio中,主要有两种创建数据库的方式,第一种是SQLite数据库,第二种是LitePal数据库,在这里我们创建数据库使用LitePal数据库,首先,我们需要编辑app/build.gradle文件,并且对其中各种项目所需的依赖库进行声明,在dependencies的闭包中添加如下内容,将LitePal引入当前项目,代码如图3.1所示
图3.1声明项目所需依赖库
其中,“compile'org.litepal.android:core:1.3.2'”语句用于对数据库进行操作,1.3.2是版本号,“compile'com.squareup.okhttp3:okhttp:3.4.1'”语句用于进行网络请求,“compile'com.google.code.gson:gson:2.7'”语句用于解析GSON数据,“compile'com.github.bumptech.glide:glide:3.7.0'”语句用于加载和展示图片