(完整版)基于Android平台的天气预报系统的设计与开发毕业论文(3)

2018-12-21 13:04

Android.content:包含对设备上的数据进行访问和发布的类 Android.database:Android系统内置一个轻量级的SQLite数据库 Android.graphics:底层的图形库,包含颜色过滤,画布,矩形,点,可以用来将它们直接绘制到屏幕上。 Android.net: 提供用来帮助访问网络的类。 Android.location:定位以及与定位有关的一些类。

Android.util:涉及到一些实用性的方法,例如对时间和日期进行操作。 Android.media: 提供一些管理多种视频,音频的媒体接口。 Android.os:提供了系统服务,IPC机制和消息传输。 Android.opngl:提供了OpenGL的工具。

Android.provider:提供了访问Android中的内容提供者的类。 Android.telephony:提供用来与拨打电话相关的API交互的类。 Android.view: 提供最基本的用户界面接口框架。 Addroid.webkit:提供用来调用默认浏览器的接口。

Android.widget包含各种UI元素,可以在应用程序的布局中使用。 3.2 Android关键技术研究

Android平台是基于java语言开发的,其中主要由四大组建构成,分别为:Activity、Service、Broadcast Receiver、Content Provider。

1.Activity Activity就是一个用户界面,每一个Activity就是一个独立的界面。比如照相机程序,实现一个拍照的Activity,短信也是一个Activity,拨号界面也是一个Activity等等,这些Activity都是相互独立的,但组合在一起它们就变成一个完整功能的应用程序了。我们可以把Activity理解成java中的JFrame控件,不过它与JFrame的区别在于:java中的JFrame本身可以设置布局管理器,不断的向JFrame中添加组件,但Activity只能通过setContentView(layout)方法在主界面显示布局。

2.Service Service与Activity的地位是相同的,它也代表一个独立的Android组件,Service与Activity的区别在于:Service通常在后台运行,它不需要与用户进行交互,因此Service没有用户界面。与Activity需要继承Activity的基类一样,Service同样也需要继承Service基类。当一个Service组件在后台运行起来后,它就会和Acitivity同样也有自己的生命周期。Service组件通常用于为一些不需要界面但是又必须在后台运行的程序提供服务,比如音乐或者音频播放软件。

3. Broadcast Receiver 中文意思是广播接收者,顾名思义它主要就是用来接收来自广播和系统中的应用程序发送的消息。在Android中广播的用处非常广泛,例如当开机后会自动产生一条广播,接收到这条广播后系统就能及时的做出提示和保存数据等操作;当电池电量低的时候系统也会产生一条广播,这样就能及时提示用户进行充电等的操作。本质上Broadcast Receiver就是一种全局的监听器,我们用它来监听系统向应用程序发送的广播消息。基于以上所述我们可以用它非常方便的实现系统中不同组件之间的相互通信。

4.Content Provider 它是不同APP之间进行交换数据的核心的API , Content Provider在系统中以某种URI的形式对外提供数据,允许其他应用查询或者修改数据;其他应用程序使用Content Resolver根据URI去访问和操作指定的数据。事实上这里有一个简单的类比:可以把Content Provider看作安卓系统内部提供的一个网站,这个网站以固定的URI对外提供服务;而Content Resolver可以当成系统内部的HttpClient,它可以向指定的URI发送请求,这种请求最后委托给Content Provider处理,从而实现对网站内部数据进行操作。 3.3 小结

本单元主要概括了关于Android平台的三个方面的内容:1.Google

android移动平台的概述2.google android移动平台开发过程的研究3.Google android移动平台下的应用研究,概要的介绍了Google android移动平台相关知识,4.介绍了Android平台下的四大组件的相关内容。通过本章我们对Google android移动平台有初步的认识和了解,为后面的开发做了坚实的基础。

4.天气预报程序设计

4.1 Android的UI界面的实现

在Android中用户界面都是布局在XML文件中的。这些XML文件放在工程/res/layout下面。这对以前熟悉java可视化编程的人来说可能有些不太习惯。可能有人疑问为什么要把布局文件放在XML文件里呢?其实有过web基础的都应该知道mvc框架,这是一种用于网站开发的非常优秀的思想,在安卓系统中,安卓开发人员把用户界面放在XML文档中定义,这样就可以让XML文档专门负责用户UI界面设置,而java程序专门负责业务实现,从而降低程序的耦合,便于程序的维护和扩展,符合mvc设计思想。

在XML中Android开发人员放置了很多我们经常用到的一些组件,比如view,Button,EditText等,通过这些系统提供的控件,我们可以开发出我们想要的程序界面来。

Layout 是一类特殊的ViewGroup 控件,它们本身并不显示任何的内容,存在的惟一原因就是其中的内部结构,能够更好地摆放它的子控件。比如Linearlayout(线性布局),可将子控件按水平或垂直方向按顺序排列下去;Tablelayout(表格布局),可以将子控件按照表格的形式,一枚枚放置好;Relativelayout(相对布局),实际应用中这个布局更灵活,它可以设定各个控件之间的对齐和排列关系,适合编写复杂的界面。有了

Layout 的存在,控件和控件之间不再是独立地存在,而是更有机地结合在一起,设定起来也更为方便。

在本程序中布局文件我一共用到了如图4.1所示的布局文件

图 4.1 布局文件图

其中city_detail用来显示城市简介的信息,city_environment用来显示当前所在城市的生活指数信息,city_layout用来显示用来选择城市布局,content_layout用来显示天气情况,gps_view用来显示gps定位信息,login用来显示登录欢迎界面,main包含了用来切换的三个界面,tqyb显示主界面布局

4.2欢迎界面的实现

考虑到程序界面的美观效果,在进入主界面之前我首先设置了一个用来跳转的Activity,并命名为LoginActivity。在LoginActivity中显示login布局

Timer timer = new Timer(); final Intent intent = new

Intent(this,edu.njue.app.WeatherWebServiceActivity.class);

TimerTask task = new TimerTask(){

@Override public void run() {

}

};

}

startActivity(intent); LoginActivity.this.finish();

timer.schedule(task, 1000);

程序显示画面一秒后会进入主程序天气界面,如图4.2所示程序欢迎界面

图 4.2 欢迎界面图

4.3 主界面功能实现

第一次安装好进入程序界面时,系统会显示“本程序是第一次运行,

请选择想要了解的城市”的窗口。在这里我把默认城市设置为南京,如果


(完整版)基于Android平台的天气预报系统的设计与开发毕业论文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:中央戏剧学院毕业证样本学位证样本历任校(院)长学校代码

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: