`
fonter
  • 浏览: 868093 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

J2ME飞信协议分析(初稿)

    博客分类:
  • J2ME
阅读更多

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

分享到:
评论
4 楼 rrsy23 2009-06-18  
呵呵 了解哈 还是不错哦
3 楼 whaosoft 2009-06-16  
还是的 手机的这个是什么协议的呢
2 楼 fonter 2009-06-16  
joyfun 写道

目前j2me版本的飞信都是走的cmwap吧 根据手机号码登录目前第三方飞信版本都用的是pc协议吧

飞信要拿到手机号得走CMWAP,CMNET好像拿不到,手机端的第三方也可走PC协议,只不过要像PC端那样用手机号登录!
1 楼 joyfun 2009-06-15  
目前j2me版本的飞信都是走的cmwap吧 根据手机号码登录
目前第三方飞信版本都用的是pc协议吧

相关推荐

    j2me网络类http协议传输

    j2me网络类,http协议传输j2me网络类,http协议传输j2me网络类,http协议传输

    J2ME开发 J2ME开发 J2ME开发

    J2ME,全称Java 2 Micro Edition,是Java平台的一个子集,主要用于嵌入式设备和移动设备的开发,如手机、智能电表、家庭自动化设备等。它提供了跨平台的开发环境,使得开发者可以编写一次代码,到处运行。J2ME由两大...

    j2me_plane.rar_j2me_j2me 飞机_j2me 飞机 游戏_飞机游戏

    J2ME的Connection类提供了HTTP、WAP等协议的支持,让游戏能与服务器进行数据交互。 除此之外,优化是J2ME游戏开发中不可忽视的一环。由于移动设备性能有限,我们需要关注内存管理、减少绘图开销、合理安排线程等,...

    J2ME API 2.0 J2ME使用手册 J2ME帮助文档

    **J2ME API 2.0 - J2ME使用手册 - J2ME帮助文档** Java 2 Micro Edition(J2ME)是Java平台的一个子集,专为资源有限的设备如移动电话、智能手表和家用电器等设计。J2ME API 2.0 提供了在这些小型设备上开发应用...

    J2ME教材:J2ME&Gaming中文版

    7. **网络通信**:J2ME支持HTTP和WAP协议,可以实现在线游戏、数据同步等功能。 8. **设备适配**:由于J2ME应用于多种设备,教材会涵盖如何编写跨平台的代码,以适应不同设备的屏幕尺寸、硬件性能差异。 9. **调试...

    J2ME手机游戏开发引擎的分析与设计

    【J2ME手机游戏引擎开发引擎的分析与设计】 本文主要探讨了J2ME手机游戏引擎的开发,这种引擎能够帮助开发者快速构建J2ME平台上的游戏,通过自定义参数生成游戏框架,使得程序员可以专注于游戏逻辑的实现,提高开发...

    j2me手机浏览器/j2me手机浏览器

    此外,早期的移动互联网服务往往使用WAP(Wireless Application Protocol)协议,因此,这些浏览器也支持WAP1.x和WAP2.0协议,以便在GPRS或EDGE等较慢的网络环境下加载优化过的文本和图片内容。 **用户界面** 由于...

    j2me开发框架介绍

    下面将介绍这些框架,並分析它们的特点和功能。 1. EasyMF 简易 J2ME 开发框架 EasyMF 是一个 J2ME 开发框架,目标是设计一个简单、稳定、可快速开发的 J2ME 开发框架。它简化了 UI 设计、RMS 操作、日志框架、...

    J2ME中文版教程 J2ME教程

    **J2ME中文版教程——全面解读移动设备编程** J2ME(Java 2 Micro Edition)是Java平台的一个重要组成部分,专为嵌入式设备、移动电话和其他资源有限的设备设计。这个J2ME中文版教程是针对初学者和有一定经验的...

    J2ME_Map.rar_J2ME 地图_J2ME游戏_j2me 游戏_j2me_m_绘制地图

    在J2ME(Java 2 Micro Edition)平台上开发游戏时,地图的设计与绘制是至关重要的一个环节。J2ME作为一种轻量级的Java平台,广泛应用于移动设备,如早期的智能手机和平板电脑,用于实现各种应用程序,特别是游戏。本...

    J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏下,上为另一部分

    J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏

    j2me 代码优化,内存优化分析

    在J2ME(Java 2 Micro Edition)开发中,代码优化和内存优化是至关重要的环节,因为资源有限的移动设备需要高效且节省内存的应用。以下是一些基于标题和描述的知识点,以及可能从压缩包文件中学到的内容: 1. **...

    Tank_J2ME.rar_j2me

    通过学习和分析这些源代码,开发者可以了解如何在J2ME平台上进行图形渲染、游戏逻辑设计、资源管理以及应用部署等方面的知识。同时,它也展示了Eclipse作为开发环境时的项目结构和配置。对于想要学习J2ME游戏开发的...

    j2ME手机移动开发

    j2ME支持通过无线通信协议栈进行数据交换,如HTTP和TCP/IP。这使得开发者可以创建能够访问互联网资源的应用,如天气预报查询、新闻阅读器等。 ### 7. 资源管理与优化 由于移动设备的资源有限,j2ME开发者必须关注...

    郭克华J2ME pdf版下载

    4. **网络编程**:J2ME支持HTTP和WAP协议,使得开发者可以构建能联网的应用,比如下载、上传数据或访问Web服务。 5. **设备兼容性**:探讨如何进行跨平台测试,确保应用能在不同类型的J2ME设备上正常工作。 6. **...

    J2ME小游戏J2ME小游戏J2ME小游戏上,下为另一部分

    J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏J2ME小游戏

    j2me课件.rar

    7. **网络编程**:J2ME支持HTTP和TCP/IP协议,使得开发者可以实现网络通信,如下载、上传数据或者访问Web服务。 8. **数据存储**:J2ME中的记录管理存储系统(RMS)提供了基本的数据存储功能,允许应用程序在设备...

    j2me游戏.rar

    Java 2 Micro Edition(J2ME)是一种针对嵌入式设备和移动设备的Java平台,主要用于开发手机游戏、应用程序和服务。"j2me游戏.rar"很可能是包含了一系列使用J2ME技术开发的游戏资源包。在本文中,我们将深入探讨J2ME...

    J2ME版贪吃蛇游戏

    - **J2ME贪吃蛇项目分析与说明.doc**:这可能是一个详细的项目文档,包含了游戏设计思路、技术实现细节以及可能的改进点。对于学习者来说,这是一个很好的参考资料。 - **GuttlerMIDlet.1**:看起来像一个MIDlet...

    j2me 与jsp通信

    标题中的“j2me 与jsp通信”涉及的是在移动设备上使用Java 2 Micro Edition (J2ME)平台与服务器端的JavaServer Pages (JSP)进行数据交互的技术。J2ME通常用于开发功能手机和嵌入式系统的应用程序,而JSP则是Web开发...

Global site tag (gtag.js) - Google Analytics