J2ME飞信协议用的是HTTP协议,用POST的方式请求数据,数据采用统一的UTF-8编码,并通过PingPong 维持Session会话。
首先 第一步是向http://nav.m161.com.cn/geadapteruri.aspx请求服务入口,请求时向服务端Post一些客户端参数,如果参数正确服务端将响应服务入口地址,响应数据为XML流,如下所示。
<?xml version="1.0" encoding="utf-8" ?>
<Root xmlns="http://tempuri.org/DateExchange.xsd">
<Response>
<Error>0</Error>
<Memo/>
</Response>
<Uri>
http://liveja.amigo.bjmcc.net/transfer.vurl
</Uri>
</Root>
XML中包含服务入口 http://liveja.amigo.bjmcc.net/transfer.vurl即为服务地址。
接着需向此URL请求并带上客户端版本和客户端软件类型信息(请求方式POST),如果正常服务端会响应数据包,数据包包含维持会话Session的ID 、用户手机号、用户信息、飞信说明等内容,下一步需对数据包进行解析,并把一些有用的信息提取出来,它们是用字符'\002'进行分割。
为了维持会话,下次请求的URL必须带上这个Session ID,否则无法进行下一步请求,如获取的ID为0f850fac-8f99-405f-ab62-5e8ece83724f 那么下次需请求的URL为http://liveja.amigo.bjmcc.net/transfer.vurl?guid=0f850fac-8f99-405f-ab62-5e8ece83724f。
数据包格式
HTTP请求数据包用UTF-8编码,每个包有两个部分Header和Payload,Header有4个字节,前三个字节为整个数据包长度(Payload长+4)第一个字节为长度>>16位,第二个字节为>>8位,第三个字节不位移,第四个字节表示处理类型,如一些初始化命令退出等,Payload是可变长的。
类型处理(第四个字节byte)
1:初始化请求
3:初始化响应处理,有导航功能
4:设置用户PingPong等侍时间,客户端更新等
5:第一次用户登录
6:Ping时发送的数据包
7:登出
8:发送聊天信息
9:接收新信息
10:删除用户
11:用户聊天Session
12:更新好友列表
16:服务初始化
导读
S40平台播放多媒体时内存优化 http://fonter.iteye.com/blog/413022
开源一个J2ME解析类 http://fonter.iteye.com/blogs/409830
手机中的重定向问题及处理 http://fonter.iteye.com/blog/400836
J2ME如何通过cmwap直接访问互连网 http://fonter.iteye.com/blog/400868
J2ME开发中由WAP网关带来的cookie问题 http://fonter.iteye.com/blog/399105
安装JAD时提示JAD无效原因之一 http://fonter.iteye.com/blog/400888
J2ME网络交互之优化 http://fonter.iteye.com/blog/405137
解决Eclipse无法调试J2ME程序的配置方法 http://fonter.iteye.com/blog/405697
准备做个PushMail(推送邮) http://fonter.iteye.com/blog/408368
分享到:
相关推荐
j2me网络类,http协议传输j2me网络类,http协议传输j2me网络类,http协议传输
J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,主要用于嵌入式设备和移动设备的开发,如手机、智能电表、家庭自动化设备等。它提供了跨平台的开发环境,使得开发者可以编写一次代码,到处运行。J2ME由两大...
J2ME的Connection类提供了HTTP、WAP等协议的支持,让游戏能与服务器进行数据交互。 除此之外,优化是J2ME游戏开发中不可忽视的一环。由于移动设备性能有限,我们需要关注内存管理、减少绘图开销、合理安排线程等,...
**J2ME API 2.0 - J2ME使用手册 - J2ME帮助文档** Java 2 Micro Edition(J2ME)是Java平台的一个子集,专为资源有限的设备如移动电话、智能手表和家用电器等设计。J2ME API 2.0 提供了在这些小型设备上开发应用...
7. **网络通信**:J2ME支持HTTP和WAP协议,可以实现在线游戏、数据同步等功能。 8. **设备适配**:由于J2ME应用于多种设备,教材会涵盖如何编写跨平台的代码,以适应不同设备的屏幕尺寸、硬件性能差异。 9. **调试...
【J2ME手机游戏引擎开发引擎的分析与设计】 本文主要探讨了J2ME手机游戏引擎的开发,这种引擎能够帮助开发者快速构建J2ME平台上的游戏,通过自定义参数生成游戏框架,使得程序员可以专注于游戏逻辑的实现,提高开发...
此外,早期的移动互联网服务往往使用WAP(Wireless Application Protocol)协议,因此,这些浏览器也支持WAP1.x和WAP2.0协议,以便在GPRS或EDGE等较慢的网络环境下加载优化过的文本和图片内容。 **用户界面** 由于...
下面将介绍这些框架,並分析它们的特点和功能。 1. EasyMF 简易 J2ME 开发框架 EasyMF 是一个 J2ME 开发框架,目标是设计一个简单、稳定、可快速开发的 J2ME 开发框架。它简化了 UI 设计、RMS 操作、日志框架、...
**J2ME中文版教程——全面解读移动设备编程** J2ME(Java 2 Micro Edition)是Java平台的一个重要组成部分,专为嵌入式设备、移动电话和其他资源有限的设备设计。这个J2ME中文版教程是针对初学者和有一定经验的...
在J2ME(Java 2 Micro Edition)平台上开发游戏时,地图的设计与绘制是至关重要的一个环节。J2ME作为一种轻量级的Java平台,广泛应用于移动设备,如早期的智能手机和平板电脑,用于实现各种应用程序,特别是游戏。本...
J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏
在J2ME(Java 2 Micro Edition)开发中,代码优化和内存优化是至关重要的环节,因为资源有限的移动设备需要高效且节省内存的应用。以下是一些基于标题和描述的知识点,以及可能从压缩包文件中学到的内容: 1. **...
通过学习和分析这些源代码,开发者可以了解如何在J2ME平台上进行图形渲染、游戏逻辑设计、资源管理以及应用部署等方面的知识。同时,它也展示了Eclipse作为开发环境时的项目结构和配置。对于想要学习J2ME游戏开发的...
j2ME支持通过无线通信协议栈进行数据交换,如HTTP和TCP/IP。这使得开发者可以创建能够访问互联网资源的应用,如天气预报查询、新闻阅读器等。 ### 7. 资源管理与优化 由于移动设备的资源有限,j2ME开发者必须关注...
4. **网络编程**:J2ME支持HTTP和WAP协议,使得开发者可以构建能联网的应用,比如下载、上传数据或访问Web服务。 5. **设备兼容性**:探讨如何进行跨平台测试,确保应用能在不同类型的J2ME设备上正常工作。 6. **...
J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏
7. **网络编程**:J2ME支持HTTP和TCP/IP协议,使得开发者可以实现网络通信,如下载、上传数据或者访问Web服务。 8. **数据存储**:J2ME中的记录管理存储系统(RMS)提供了基本的数据存储功能,允许应用程序在设备...
Java 2 Micro Edition(J2ME)是一种针对嵌入式设备和移动设备的Java平台,主要用于开发手机游戏、应用程序和服务。"j2me游戏.rar"很可能是包含了一系列使用J2ME技术开发的游戏资源包。在本文中,我们将深入探讨J2ME...
- **J2ME贪吃蛇项目分析与说明.doc**:这可能是一个详细的项目文档,包含了游戏设计思路、技术实现细节以及可能的改进点。对于学习者来说,这是一个很好的参考资料。 - **GuttlerMIDlet.1**:看起来像一个MIDlet...
标题中的“j2me 与jsp通信”涉及的是在移动设备上使用Java 2 Micro Edition (J2ME)平台与服务器端的JavaServer Pages (JSP)进行数据交互的技术。J2ME通常用于开发功能手机和嵌入式系统的应用程序,而JSP则是Web开发...