欢迎来到天天文库
浏览记录
ID:19898887
大小:2.19 MB
页数:58页
时间:2018-10-07
《android网络访问和service组件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第13讲网络访问3和Service组件本章学习目标:掌握android调用WebService掌握android中Socket编程掌握android中Service使用客户端服务器响应(response)请求(request)Web容器Servlet1Servlet2数据库课程回顾未来人们如何开发软件?SaaS:SoftwareasaService(软件即服务)。将软件视为一种基础设施与服务,像“自来水”一样的东西。网络无所不在,网络可以看成是一个软件服务的聚合体,是一个超级大“HUB”。开发软件
2、就是“聚合服务”:大服务套小服务,这一服务调用另一服务,基于互联网协同实现软件功能。高度分布式、异构和跨平台。4SOASOA(ServiceOrientedArchitecture,面向服务的架构)。以服务作为软件的基本构造块来“组装”软件。WebService是当前最成熟的一种SOA技术。它将网站的功能封装为可复用的软件服务,供其他Web应用程序调用。5WebService的特点WebService可看成是一个可复用的Web应用程序组件WebService是平台无关的WebService是自说明
3、的可以使用一种统一的机制来在互联网上查找WebService6WebService工作原理WebService驻留于WebServer中使用UDDI机制查找符合要求的WebService网络中的机器通过SOAP协议进行通讯7SOAP-概述SOAP(简单对象访问协议)是一种轻量级协议,用于在分散型、分布式环境中交换结构化信息。SOAP利用XML技术定义一种可扩展的消息处理框架,它提供了一种可通过多种底层协议进行交换的消息结构。这种框架的设计思想是要独立于任何一种特定的编程模型和其他特定实现的语义在协
4、议栈中,SOAPXML位于用来发送消息的传输协议之上,而位于特定领域的XML文档之下目前的版本是SOAP1.2SOAP例子SOAP消息SOAP元素是SOAP消息的根元素,包含一个可选的SOAPHeader和一个必需的SOAPBody元素可选的并且可扩展的元素,用于描述元数据(metadata),比如安全性、事务处理和会话状态信息必需的元素,包含发送者的XML文档(文档形式和RPC形式)在接收者(SOAP中介)返回的响应信息中,可能包含
5、的元素,用来描述在阅读SOAP消息时遇到的任何异常情况W3CNote指定了一种在SOAP消息中嵌入和描述附件(attachment,格式不限)的方式android调用WebService案例1手机号码:http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx天气预报:http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx调用android调用WebService案例1分析
6、—请求SOAPandroid调用WebService案例1分析—SOAP响应android调用WebService案例1分析—实现android调用WebService案例1分析—请求android调用WebService案例1分析—读取结果AndroidPull解析器读取XMLPull解析器的运行方式与SAX解析器相似。它提供了类似的事件,如:开始元素和结束元素事件,使用parser.next()可以进入下一个元素并触发相应事件。事件将作为数值代码被发送,因此可以使用一个switch对感兴趣的
7、事件进行处理。当元素开始解析时,调用parser.nextText()方法可以获取下一个Text类型节点的值。Pull解析XML文件XmlPullParser的事件类型:START_DOCUMENTEND_DOCUMENTSTART_TAGEND_TAG方法parser.next()parser.nextText()getName();Pull解析XML文件-实例publicclassPullService{publicstaticListreadXML(InputStreamin
8、putStream)throwsIOException{XmlPullParserparser=Xml.newPullParser();try{parser.setInput(inputStream,"UTF-8");inteventType=parser.getEventType();PersoncurrentPerson=null;Listpersons=null;while(eventType!=XmlPullParser.END_DOCUMENT){swit
此文档下载收益归作者所有