第13章Symbian网络应用开发-[公司名称]

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Symbian网络应用开发主要内容Symbian通信体系结构Socket应用开发HTTP协议应用开发Symbian通信体系结构Socket应用开发客户端/服务器程序Socket应用开发套接字服务器会话套接字服务器会话类RSocketServm_sockServ;User::LeaveIfError(m_sockServ.Connect());网络连接管理类RConnectionSocket应用开发套接字RSocketm_socket;User::LeaveIfError(m_socket.Open(m_socketServ,KAfInet,KSockStream,KProtocolInetTcp));m_socket.Connect(serverAddr,iStatus);//接收和发送数据voidRecv(TDes8&aDesc,TUintflags,TRequestStatus&aStatus);voidRecv(TDes8&aDesc,TUintflags,TRequestStatus&aStatus,TSockXfrLength&aLen);voidRecvOneOrMore(TDes8&aDesc,TUintflags,TRequestStatus&aStatus,TSockXfrLength&aLen);voidSend(constTDesC8&aDesc,TUintsomeFlags,TRequestStatus&aStatus,TSockXfrLength&aLen);Socket应用开发域名解析基本过程(1)创建域名解析器实例RHostResolverm_resolver;//解析结果TNameEntrym_nameEntry;//被解析器找到的域名记录TNameRecordm_nameRecord;(2)打开域名解析器User::LeaveIfError(m_resolver.Open(m_socketServ,KAfInet,KProtocolInetUdp));Socket应用开发域名解析基本过程(3)发送域名解析请求TBuf<50>serverName;serverName.Append(_L(www.sohu.com));m_resolver.GetByName(serverName,m_nameEntry,iStatus);Socket应用开发域名解析基本过程(4)处理域名解析结果voidCConnection::RunL(){m_resolver.Close();if(iStatus==KErrNone){//域名解析成功m_nameRecord=m_nameEntry();//取出域名记录ConnectL(TInetAddr::Cast(m_nameRecord.iAddr).Address());}else{//域名解析失败//做错误处理}}Socket应用开发安全套接字使用安全套接字的基本过程:(1)建立和打开一个RSocket套接字使用RSocket::Open打开一个TCP/IP套接字RSocket。使用RSocket::Connect()连接服务器。(2)由RSocket句柄创建一个CSecureSocket对象(3)在安全套接字上调用StartClientHandshake()(4)使用CSecureSocket的Send()和Recv()安全的传输数据HTTP协议应用开发HTTP会话RHTTPSessioniSession;//在类的ConstructL()方法中,打开会话iSession.OpenL();HTTP协议应用开发HTTP事务事务运行在会话上事务由请求和响应组成HTTP事务类RHTTPTransaction侦听器接口类classMHTTPTransactionCallback{public:virtualvoidMHFRunL(RHTTPTransactionaTransaction,constTHTTPEvent&aEvent)=0;virtualTIntMHFRunError(TIntaError,RHTTPTransactionaTransaction,constTHTTPEvent&aEvent)=0;};HTTP协议应用开发HTTP事务事务运行在会话上事务由请求和响应组成HTTP事务类RHTTPTransaction侦听器接口类classMHTTPTransactionCallback{public:virtualvoidMHFRunL(RHTTPTransactionaTransaction,constTHTTPEvent&aEvent)=0;virtualTIntMHFRunError(TIntaError,RHTTPTransactionaTransaction,constTHTTPEvent&aEvent)=0;};

1 / 13
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功