2011年8月29日

ESFramework Demo之iPhone版--在线用户列表

摘要: 上回我们说到心跳消息,当我们收到Server返回来的第一条心跳消息时,就可以向Server发一条,请求在线用户列表的协议,请求协议非常的简单,同心跳消息一样只有消息头,不同的是它的MessageType是112。当Server收到这条请求协议后,会回复一条MessageType同样为112的回复消息,与请求协议不同,回复协议带有Body体。下面让我们来看一条Server回复Client在线列表的byte流:00000000 FF FF 70 00 02 00 00 00 18 00 00 00 02 5F 30 00 p..... ....._0. 00000010 00 0... 阅读全文

posted @ 2011-08-29 03:50 upwifi 阅读(1750) 评论(9) 推荐(1)

2011年8月28日

ESFramework Demo之iPhone版--心跳协议

摘要: 上篇我们完成了登录功能,这一回我们一起看一下心跳协议。心跳协议是为了能让服务端实时感知到客户端的存在,为了实现这一目的,我们可以每隔一段时间就向服务端发送一条消息。这条件消息非常的简单,它只有消息头。只需定义它的MessageType就好了。在Rapid Demo中心跳协议的MessageType是104。 看上去我们要完成这件事好像很容易,事实上确实如此,我们只需按心跳协议构造一条这样的byte流,每隔几秒发出去就OK了。说起每隔几秒去做一件事,我知道winform中是有一个Timer控件的,iPhone开发中也有,它叫NSTimer,它为什么叫NSTimer呢,对啊,为什么还有NSO... 阅读全文

posted @ 2011-08-28 23:55 upwifi 阅读(1884) 评论(5) 推荐(1)

2011年8月27日

ESFramework Demo之iPhone版--登录(续)

摘要: 上一回我们只是画了一个界面,虽然我们看到了用于输入昵称和密码的文本框,但我们还没有给这两个文本框做输入键盘的订制。本文接着上篇,把后续的功能完成,其内容包括根据登陆协议构造byte流,发送给Server.解析Server返回的登录结果,判断登陆是否成功,如果成功,由登录界面跳转到聊天主界面,如图: 1.为登录界面的文本框订制键盘,比如说,现在比较流行的登录多数是用信箱作为登录的用户名的,那上图的键盘中就没有@这个按键,一会我们就做一个有@的。上图的是为password订制的键盘它有一个Done键,点它就可以发送登录请求。下面是实现的代码: 昵称的 ((CellW... 阅读全文

posted @ 2011-08-27 15:24 upwifi 阅读(1489) 评论(1) 推荐(0)

2011年8月26日

ESFramework Demo之iPhone版--登录

摘要: 目标:绘制UI完成登录功能登录界面如下:1.新建项目 项目名称:RapidEngineDemo得到项目如下:2 对所得到的项目做些修改 1)删掉MainWindow.xib 2)编辑 RapidEngineDemo-Info.plist 删掉标签 <key>NSMainNibFile</key> <string>MainWindow</string> 3)修改main.m #import <UIKit/UIKit.h> int main(int argc, char *argv[]) { NSAutoreleasePool * poo 阅读全文

posted @ 2011-08-26 16:39 upwifi 阅读(1531) 评论(2) 推荐(1)

2011年8月25日

iPhone和ESFramework通信的Demo

摘要: 这里做一个iPhone和ESFramework通信的Demo,iPhone也是个客户端,是客户端就注定它要去访问服务器,从那里获取数据。而常见的数据访问方法有两种,第一种方法,将对象以json或xml这两种格式序列化成字串,通过调用WebService的基于Web服务器的通信。第二种方法是使Client和Server建立socket连接,将对象序列化后的字串或byte流,通过socket发送给对方。相对第一种方法,基于socket的通信更加高较,安全,节省流量。 以前都是能过get/post调用web服务器的接口获取数据的,也能很好的满足业务的需求。可现在手上的项目,对客户端和服务端... 阅读全文

posted @ 2011-08-25 01:07 upwifi 阅读(2658) 评论(11) 推荐(5)

导航