g.|洲I|()
/·从SAXPorser中创建XMLReader拿/
XMLReaderxr=sp.getXMLReader();
呻氍void悯峨州Stag蛐},I■c“口■q_删)
—t州埘翮蛆qH嘲I棚)
/·创建一个在XMLReader中使用的
ContentHandler幸/
图2地址描述相关代码的依赖关系图3.3.2移动终端问通信
。
ExampleHandlermyExampleHandler=newExam·pleHandler();
目前XML已经广泛应用于数据交换领域,因为它是纯文本的,所以具有优秀的跨平台特性。参考Jab_ber协议,设计系统实体间会话由两个平行的XML流组成,一个从客户端到服务器端,另一个从服务端到客户端。当一个移动客户端连接上一个服务器时,这个客户端将发起一个客户端到服务器的XML流,同时作为响应,服务器也将发起一个服务器到客户端的XML流。在XML上下文数据流中,包括三个顶层XML元素:<presence/>包含两个实体互相发送消息的内容<message/>提供关于一个实体的可用性信息。实体表现出的在线状态不是“可用”就是“不可用”。“可用”状态表示发送者可以立即收到消息。“不可用”状态表示发送者不能在当前时间收到任何数据:<lq/>(info/query)意思是信息/查询。此元素主要是用来在两个实体问构建一个根本的会话,并且允许实体问来回传送XML格式的请求和响应。由于该即时通信系统使用XML数据传输,因此XML的解析在移动端开发尤为重要的。J2ME上可以调用开源的I<>(ML库或使用JSR172的API来解析XML。Android直接支持DOM解析器和SAX解析器两种方法,其中SAX方法内存占用小,更适合在手机程序开发H】,下面是在Android平台客户端上构建一个SAX解析器的核心代码。
’
&