Android模块化开发项目式教程PPT-Android课表查询

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
项目描述
设计一个简单课表查询项目,该项目可通过Android与HTTP服务器的交互来实现 对服务器端的课表数据进行查询的功能。
4
模块8 课表查询
知识储备
8.1. JSON数据解析
1. JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。简单地说, JSON可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间 轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器 端程序。
8
模块8 课表查询
知识储备
8.2 HttpURLConnection使用
HTTP (Hypertext Transfer Protocol ),是Web联网的基础,也是手机联网常用 的协议之一,HTTP协议是建立在TCP协议之上的一种协议。
HTTP连接最显著的特点是客户端发送的每次请求都需要服务器回送响应,在请求 结束后,会主动释放连接,从建立连接到关闭连接的过程称为“一次连接”。
为了实现Android异步操作,开发者可以使用Handler机制或使用AsnycTask进行 异步操作,在第7模块中我们已经介绍了使用Thread+Handler+Message机制进行UI 界面更新的方法,实质也就是使用Handler机制进行异步操作的实nycTask的使用
知识储备
8.2 HttpURLConnection使用
HttpURLConnection是Java的标准类,继承自HttpConnection。它是一个抽象 类,不能实例化对象,主要是通过URL的openConnection方法获得。语法如下: URL url = new URL(" ");HttpURLConnection conn = (HttpURLConnection)url. openConnection();
2.AsynTask与Handler的区别 (1)AsyncTask异步实现的原理及特点 (2)Handler异步实现的原理及特点
使用AsyncTask进行异步操作 示例【例8-4】
15
模块8 课表查询
项目实施
1.项目分析
设计一个简单课表查询项目,要求在界面顶部 设置一搜索栏用于输入查询的条件,然后,通过访 问WEB服务器获取服务器端的课表数据,并在手机 屏幕上显示出来。界面效果如图8-4所示。
HTTP包含了GET和POST两种请求网络资源的方式。GET可以获得静态页面,也可 以把参数放在URL子字符串后面,传递给服务器。而POST方法的参数是放在HTTP请求 中,因此,在编程之前,应当首先明确使用的请求方法,然后再根据所使用的请求数据 方法,选择相应的编程方式。
9
模块8 课表查询
1
Android模块 化项目式教程
模块8 课表查询
2
目录页
学习目标 项目描述 知识储备 项目实施 项目总结
— 2—
3
模块8 课表查询
学习目标
•掌握JSON数据解析的方法。 •掌握HttpURLConnection的使用方法。 •了解异步的概念。 •了解AsyncTask类,掌握AsyncTask的使用方法。 •学会简单课表查询项目的设计
1. AsnycTask类 在Android中实现异步任务机制有两种方式,Handler和AsyncTask。 AsyncTask的定义: public abstract class AsyncTask<Params, Progress, Result> {……} 说明: (1)AsyncTask是抽象类,AsyncTask定义了三种泛型类型 Params,Progress 和Result。 (2)AsyncTask异步任务执行的步骤。 (3)为了正确的使用AsyncTask类,必须遵守以下几条准则。
参照本模块的课表查询项目,完成课表查询手机客户端的程序设计
例如:String json= ["唱歌","编程","打球"] JSON的复杂数据形式就是Object或数组中的值还可以是另一个 Object 或者数组, 例如: String json={“name”:“小芳”,“ hobby ”:[ “唱歌”,“编程”,“打球”]}
7
模块8 课表查询
知识储备
8.1. JSON数据解析
3. JSON解析类 Android提供了四个与JSON相关的类和一个Exceptions,它们分别是: JSONObject类:可以看作是一个json对象,这是系统中有关JSON定义的基本单 元,其包含一对 (Key-Value)数值。 JSONArray类:API的解释为一组有序的值的序列。 JSONStringer类:可以帮助快速和便捷的创建JSON表达式。 JSONTokener类:是系统提供的用来把JSON表达式解析成JSONObject或者 JSONArray,在该类中基本上使用是构造器和nextValue()方法。 JSONException:是类抛出的异常信息。 JSON的创建与解析【例8-1】
urlConn.setRequestMethod("POST"); 示例【例8-3】
11
模块8 课表查询
知识储备
8.3 异步的概念
在Android中,同步执行是指程序按指令顺序从头到尾依次执行,也就是程序在发 出一个功能调用后,在没有得到调用的结果之前,该调用就不会返回。
异步的概念和同步相对,当一个异步过程调用发出后,调用者不能立刻得到结果。 实际处理这个调用的部件在完成后,通过状态、通知和回调来通知调用者。
5
模块8 课表查询
知识储备
8.1. JSON数据解析
2. JSON基本语法 JSON的语法规则如下: u并列的数据之间用逗号(",")分隔; u映射用冒号(":")表示; u并列数据的集合(数组)用方括号("[]")表示; u映射的集合(对象)用大括号("{}")表示。
6
模块8 课表查询
13
模块8 课表查询
知识储备
8.4 AsnycTask的使用
2.AsynTask与Handler的区别 (1)AsyncTask异步实现的原理及特点 (2)Handler异步实现的原理及特点
使用AsyncTask进行异步操作 示例【例8-3】
14
模块8 课表查询
知识储备
8.4 AsnycTask的使用
知识储备
8.1. JSON数据解析
2. JSON基本语法 JSON的Object(对象类型) :用{ }包含一系列无序的key–Value键值对表示,其中Key和 Value之间用冒号分割,每个key-value之间用逗号分割。 例如:String json={"name":"小芳", "age":16} JSON的Array(数组类型):使用[ ]包含所有元素,每个元素用逗号分隔,元素可以是任 意的值。访问其中的元素,使用索引号,从 0 开始。
2.项目实现
16
模块8 课表查询
项目总结
通过项目学习,掌握课表查询模块的设计: ① 掌握使用HttpURLConnection方式来进行HTTP网络通讯的方法。 ② 了解AsyncTask异步实现原理,掌握AsyncTask异步使用方法。 ③ 掌握JSON数据的解析方法。
17
模块8 课表查询 【项目训练——课表查询设计】
1、发送GET请求 示例【例8-2】
10
模块8 课表查询
知识储备
8.2 HttpURLConnection使用
2.发送POST请求 在Android中,如果要发送POST请求,需要通过其setRequestMethod()方法进 行指定,其代码如下: //创建一个HTTP连接
HttpURLConnection urlConn = (HttpURLConnection) url.openConnection();
相关文档
最新文档