《第11章 网络编程.doc》由会员分享,可在线阅读,更多相关《第11章 网络编程.doc(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、博学谷让IT教学更简单,让IT学习更有效传智播客Android移动应用基础教程(Android Studio)(第2版)教学设计课程名称: Android移动应用基础教程(第2版) 授课年级: 20xx年级 授课学期: 20xx学年第一学期 教师姓名: 某某老师 20xx年xx月xx日课题名称第11章 网络编程 计划学时6学时内容分析Android作为智能手机市场主流的操作系统,它的强大离不开其对网络功能的支持。Android系统提供了多种实现网络通信的方式,接下来,我们从最基本的HTTP协议开始,到Android中原生的HttpUrlConnection、WebView的使用以及网络数据的解
2、析,详细讲解Android网络编程的相关知识。教学目标1、 了解HTTP协议,学会使用HttpURLConnection访问网络;2、 掌握WebView控件的使用,能够加载不同网页;3、 掌握XML与JSON数据解析,可以熟练解析不同的数据。教学重点使用HttpURLConnection访问网络、WebView控件的使用、XML与JSON数据的解析。教学难点HttpURLConnection访问网络、XML与JSON数据的解析。教学方式教师采用课堂讲授为主,使用教学PPT辅助授课。教学过程第一学时 (HTTP协议简介、使用HttpURLConnection访问网络)一、情景导入 1、教师根据
3、日常生活中的例子,引出HTTP协议老师引导,日常生活中,大多数人遇到了问题都会使用手机进行百度搜索。在浏览器的地址栏中输入百度的网址点击搜索,此时就会进入百度主页。这个访问百度的过程就是通过HTTP协议完成的,所谓的HTTP(Hyper Text Transfer Protocol)协议即超文本传输协议,它规定了浏览器和万维网服务器之间互相通信的规则。2、教师根据课件,讲述HTTP协议简介与使用HttpURLConnection访问网络我们首先要了解什么是HTTP协议,接着熟悉如何使用HttpURLConnection访问网络。3、明确学习目标l 要求学生了解什么是HTTP协议l 要求学生掌握
4、如何使用HttpURLConnection访问网络二、重点知识讲解1、HTTP协议简介HTTP是一种请求/响应式的协议,当客户端在与服务器端建立连接后,向服务器端发送的请求,被称作HTTP请求。服务器端接收到请求后会做出响应,称为HTTP响应。2、使用HttpURLConnection访问网络Android对HTTP通信提供了很好的支持,通过标准的Java类HttpURLConnection便可实现基于URL的请求及响应功能。HttpURLConnection继承自URLConnection类,用它可以发送和接收任何类型和长度的数据,也可以设置请求方式、超时时间。在实际开发中,绝大多数的App
5、都需要与服务器进行数据交互,也就是访问网络,此时就需要用到HttpURLConnection对象。老师引导,在使用HttpURLConnection访问网络时,通常会用到两种网络请求方式,一种是GET,一种是POST,这两种请求方式是在HTTP/1.1中定义的,用于表明Request-URI指定资源的不同操作方式。这两种请求方式在提交数据时也是有一定区别的,接下来分别对GET方式提交数据和POST方式提交数据进行详细讲解。1.GET方式提交数据GET方式是以实体的方式得到由请求URL所指向的资源信息,它向服务器提交的参数跟在请求URL后面。使用GET方式访问网络URL的长度一般要小于1K。2.
6、POST方式提交数据使用POST方式向服务器发出请求时需要在请求后附加实体。它向服务器提交的参数在请求后的实体中,POST方式对URL的长度是没有限制的。使用POST方式请求网络,请求参数跟在请求实体中。用户不能在浏览器中看到向服务器提交的请求参数,因此POST方式要比GET方式相对安全。老师根据教材和PPT内容,对HTTP协议和HttpURLConnection的用法进行详细的讲解,对两种网络请求方式的实现方法进行重点讲解,要求学生熟练掌握。三、归纳总结,布置课后作业1、回顾上课前的学习目标,并对本节课的重要知识点进行总结。教师提问学生本节课需要掌握的知识点,包括什么是HTTP协议以及如何使
7、用HttpURLConnection访问网络,并对学生的回答进行补充和总结。2、布置随堂练习,检查学生掌握情况。根据博学谷和随堂练习资源,给学生布置随堂练习,检测学生的掌握程度,并对学生出现的问题进行解决。3、使用博学谷系统中的测试题给学生布置作业。第二、三学时(使用WebView浏览网页、使用WebView执行HTML代码、设置WebView支持JavaScript)一、回顾上节讲解的知识,引出本节需要讲解的知识1、教师对上节课留的作业进行答疑。2、回顾上节课学习的内容,引出本节课的内容。上节课讲解了HTTP协议简介与使用HttpURLConnection访问网络等知识,了解完这些知识之后,
8、接下来讲解使用WebView控件浏览网页、支持HTML代码以及设置WebView支持JavaScript。3、明确学习目标l 要求学生掌握如何使用WebView浏览网页l 要求学生掌握使用WebView执行HTML代码l 要求学生掌握如何设置WebView支持JavaScript二、重点知识讲解 1、教师根据课件,讲述使用WebView浏览网页在Android程序中,WebView控件是专门用于浏览网页的,其使用方法与其他控件一样,既可以在XML布局文件中使用标签来添加,也可以在Java文件中通过new关键字来创建。一般情况下,会采用第一种方法,即通过在XML布局文件中添加标签的形式,在XML
9、布局文件中添加一个WebView控件的具体代码如下: 上述代码中,添加的WebView控件的id为webView,该控件的宽和高都是match_parent。添加完该控件之后,可以用该控件提供的方法来执行浏览器的操作了,根据教材内容详细讲解WebView控件常用的方法并通过一个案例来实现使用WebView浏览网页的功能。教师根据教材与PPT详细讲解如何使用WebView浏览网页。2、教师根据课件,讲述使用WebView执行HTML代码在Android程序中,有一些文本提示信息使用HTML代码实现会比较简便快捷,而且界面也会更加美观。WebView类提供了loadData()和loadDataW
10、ithBaseURL()方法加载HTML代码。当使用loadData()方法来加载带中文的HTML内容时会产生乱码,但是使用loadDataWithBaseURL()方法就不会出现这种情况。接下来根据教材介绍loadDataWithBaseURL()方法中的参数,并通过该方法实现WebView执行HTML代码的案例。教师根据教材与PPT详细讲解如何使用WebView执行HTML代码。3、教师根据课件,讲述如何设置WebView控件来支持JavaScriptAndroid程序中,由于WebView控件加载的某些网页是通过JavaScript代码编写的,而WebView控件在默认情况下是不支持Ja
11、vaScript代码的,因此为了解决这个问题,我们需要通过setJavaScriptEnabled()方法来设置WebView控件,使其可以支持JavaScript代码。接下来,通过一个案例来实现设置WebView控件来支持JavaScript的功能。具体操作步骤参考教材内容。教师根据教材与PPT详细讲解如何设置WebView控件来支持JavaScript。 三、归纳总结,布置课后作业1、回顾上课前的学习目标,并对本节课的重要知识点进行总结。教师提问学生本节课需要掌握的知识点,包括使用WebView浏览网页、使用WebView执行HTML代码以及设置WebView支持JavaScript,并对
12、学生的回答进行补充和总结。2、布置随堂练习,检查学生掌握情况。根据博学谷和随堂练习资源,给学生布置随堂练习,检测学生的掌握程度,并对学生出现的问题进行解决。3、使用博学谷系统中的测试题给学生布置作业。 第四学时(JSON数据解析、实战演练天气预报)一、回顾上节讲解的知识,引出本节需要讲解的知识1、教师对上节课留的作业进行答疑。2、回顾上节课学习的内容,引出本节课的内容。上节课讲解了使用WebView浏览网页、使用WebView执行HTML代码、设置WebView支持JavaScript等知识,了解完这些知识之后,接下来讲解JSON数据解析与实战演练天气预报。3、明确学习目标l 要求学生了解JS
13、ON数据l 要求学生掌握如何解析JSON数据l 要求学生掌握如何实现天气预报案例二、重点知识讲解 1、教师根据课件,讲述JSON数据解析1、JSON数据JSON即JavaScript Object Notation(对象表示法),是一种轻量级的数据交换格式,它是基于JavaScript的一个子集,使用了类似于C语言家庭的习惯(包括C、C+、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交互语言,易于阅读和编写,同时也易于机器解析和生成。JSON有如下两种数据结构: 对象结构:以“”开始,以“”结束。中间部分由0个或多个以“,”分隔的key:v
14、alue对构成,注意关键字和值之间以“:”分隔。数组结构:以“”开始,以“”结束。中间部分由0个或多个以“,”分隔的值的列表组成。2、JSON解析老师引导,前面讲解了JSON数据,若要使用JSON中的数据,就需要将JSON数据解析出来。接下来将针对JSON数据的解析进行详细的介绍。 为了解析JSON数据,Android SDK为开发者提供了org.json包,在该包中有JSONObject和JSONArray两个类分别对JSON对象与JSON数组两种结构的数据进行解析。 Gson库是由Google提供的,若要使用Gson库,首先需要将gson.jar添加到项目中(详见多学一招),然后才能调用其
15、提供的方法。老师结合教材和PPT内容,对JSON数据与JSON解析的两种方法进行详细的讲解,重点讲解解析JSON所使用的方法,要求学生熟练掌握。2、教师根据课件,讲述实战演练天气预报接下来通过解析JSON数据的方法完成一个天气预报的案例。1.创建weather.json文件将weather.json文件放到文件夹app/src/main/assets中,weather.json文件中包含三个城市的天气信息。2.创建实体类WeatherInfo由于天气预报信息包含温度、天气、城市、PM值以及风力等属性,因此需要创建一个实体类WeatherInfo来存放这些属性。3.创建JsonParse类由于天
16、气预报的数据信息是以JSON格式存放的,因此需要创建一个JsonParse类用于解析获取的JSON数据。首先在cn.itcast.weather包中创建一个JsonParse类,接着在该类中分别创建read()方法将从assets文件夹中获取的数据流转化为JSON数据,getInfosFromJson()方法用于解析获取的JSON数据。需要注意的是,首先要将Gson库文件导入项目中。3.编写界面交互代码在MainActivity中实现北京、上海、广州三个按钮的点击事件,获取对应城市的天气信息显示到界面上。老师结合教材和PPT内容,对使用JSON方法解析数据进行详细的讲解,加深学生印象,要求学生
17、熟练掌握JSON解析的使用方法。三、归纳总结,布置课后作业1、回顾上课前的学习目标,并对本节课的重要知识点进行总结。教师提问学生本节课需要掌握的知识点,包括JSON数据解析与实战演练天气预报,并对学生的回答进行补充和总结。2、布置随堂练习,检查学生掌握情况。根据博学谷和随堂练习资源,给学生布置随堂练习,检测学生的掌握程度,并对学生出现的问题进行解决。3、使用博学谷系统中的测试题给学生布置作业。第五、六学时(上机练习)上机练习主要针对本章中需要重点掌握的知识点,以及在程序中容易出错的内容进行练习,通过上机练习可以考察同学对知识点的掌握情况,对代码的熟练程度。上机一:(考察知识点完成使用HttpURLConnection访问网络、使用WebView进行网络开发)形式:单独完成题目:请按照以下要求完成操作。要求如下:1) 使用HttpURLConnection访问网络2) 使用WebView进行网络开发上机二:(考察知识点完成JSON数据解析与实战演练天气预报)形式:单独完成题目:请按照以下要求完成操作。要求如下:1) JSON数据解析2) 完成天气预报案例3) 完成课后习题中的上机练习4) 使用博学谷系统中的测试题给学生布置上机练习,或者老师自行安排上机练习。思考和练习见教材第11章课后习题教学后记北京市昌平区建材城西路金燕龙办公楼一层 电话:400-618-4000
限制150内