Transcript 手持设备软件开发实训
手持设备软件开发实训
手持设备软件开发实训
手持设备软件开发实训
第八讲 访问Web Services
一、Web Services简介
手持设备软件开发实训
Web的问世,进入了全球网络和信息时代,当网络只
是一个提供信息、交流信息、使用信息的平台,没有成为
一个计算平台。
作为嵌入式设备来说,其存储能力有限,在某些商业
应用场景中,服务器端的数据都是几十M、上百M级单位,
这么多的数据是不可能全部存储在嵌入式设备上的,所以
在实际应用系统中,往往需要利用嵌入式设备借助于Web
Services服务来获取服务器端数据。
1、Web服务定义
Web Service就是一个应用程序,它向外界暴露出一
个能够通过Web进行调用的 API。
能够用编程的方法通过Web来调用这个应用程序。
把调用这个WebService的应用程序叫做客户端。
手持设备软件开发实训
2、Web Service优势
跨越防火墙的通信
Web Services 通过标准HTTP协议来传输数据,可
以很方便地跨越Intranet或者Internet网段,通过适当的配
置,对Web Services的访问可以很轻易地穿越防火墙。
同时,Web Services通常设计为面向服务的接口,只需
要向其发送命令来完成某一服务的请求,和服务器之间不
需要一个持久的连接,所以,通过Web Services可以很
方便地来访问远程服务器上提供的各种封装好的服务,来
获取数据或者向服务器提交数据。
手持设备软件开发实训
应用程序集成
在嵌入式环境下,平台多样性十分的突出,在一个应
用中可能会存在若干种不同的软硬件平台,有的有的硬件平
台运行的LINUX系统,有的是Windows CE系统,有了Web
Service 提供,就可以实现异构系统下的数据交互,主要是
依靠Web Service使用基于 XML的消息处理作为基本的数据
通信方式。
Web Service的核心特征之一就是服务的实现与使用之间
的高度抽象化。
手持设备软件开发实训
二、Web服务的构成
手持设备软件开发实训
三、代理类作用
通过代理类,可以引用远程的Web服务,在用户
应用程序中使用其功能,就像返回的数据是本地生产
一样。
用户
应用程序
代理
请求
响应
Web服务提供者
手持设备软件开发实训
四、如何使用Web服务
创建一个Web服务,定义Web服务的服务接口和
调用方法。
在Internet上发布Web服务。
查找Web服务以便使用它。
在客户端生成一个代理类。
调用Web服务。
五、访问MapPoint Web Service
MapPoint是微软提供的一个地图信息的Web Service,提
供全球各地的地理信息和商业网点信息(主要是北美和欧
洲地区)。MSN Search推出的地理搜索服务也是基于
MapPoint Web Service服务的。目前MapPoint还不包括中
国的地理信息。
手持设备软件开发实训
MapPoint暴露了四个Web服务:
1.查找服务--帮助我们定位地址、检索经纬度、地理
实体。
2.显示服务--这个服务允许我们显示指定地址的地图,
并设置被显示地图的大小和视图。
3.路线服务--这个服务允许我们生成路线、计算两个
地点之间的距离并提供驾车方向。
4.通用服务--它是一些工具,是上述的三个Web服务
公用部分。提供一些服务,例如国家信息和地图数据源信
息。
手持设备软件开发实训
类
说明
FindServiceSoap
提供地图查询服务的,根据指定
的地址检索位置信息,获取了地址的纬度和经度。
RenderServiceSoap
表现查询结果服务的,调用
RenderServiceSoap的GetMap方法来检索适当的图像,它是
作为流检索到的,并用位图显示出来。
FindAddressSpecification 用于指定地图的数据库,要查询
的地点。
RouteServiceSoap
提供路线服务
FindResults FindServiceSoap.FindAddress方法执查询,
返回查询操作的单个结果,FindResults类有属性"LatLong",
它会给出给定地址的纬度和经度。
MapOptions 包含RenderServiceSoap.GetMap方法的地图
显示选项
MapSpecification 包含地图显示的详细信息情况,它会保持
视图、图钉、图像格式等内容。
MapImage RenderServiceSoap.GetMap返回的地图
手持设备软件开发实训
六、项目中货物运输路线图Web服务
Web Services(http://staging.mappoint.net/standard30/mappoint.wsdl)
代理类
应用程序