您的位置:首页 > 其它

Mtk.Socket

2012-03-29 17:17 190 查看
准备告别MTK平台开发,在此和大家分享一些技术经验。在网上浏览了一些MTK联网的介绍,觉得不够系统,在此结合一些代码片段,我们一起了解下MTK如何完成联网。

联网包括Gprs、Socket、Http以及依赖Http写出的DownLoadApp和ParseApp,然后将接口声明给UIApp。

这篇文章只是介绍Socket部分,后续将会有其他部分相应解析,通过这些整理,希望我们程序员看到MTK联网就可以搞定它。

在此我也会提出我的困惑,与大家一起交流解决,希望我们大家一起进步。

言归正传,Socket接口简介可以参见如下链接

http://blog.sina.com.cn/s/blog_4e7015810100cwgy.html  、

http://wenku.baidu.com/view/11fb6af79e31433239689389.html  、

http://www.cnblogs.com/tibetanmastiff/archive/2011/12/29/2305611.html 。

Socket联网包括基本的几个环节:gprs_reg,soc_create,soc_setsockopt,get_hostbyname,soc_connect;连接成功客户端便可以和服务器进行soc_send、soc_recv;收发数据完毕进行soc_close、gprs_dereg。

以上接口中Gprs部分的接口在Mtk.Gprs中进行介绍。

好了,Mtk给我们的接口我们已经都看到了,下面要写代码,可是不要急着动键盘,我们先来设计下.h文件。

.h文件中包含.c文件要告诉其他部分的接口、变量、宏、枚举、结构体等的声明,那么Socket要声明自己的接口给谁看呢?可以肯定的要声明给Http看,因为Http要用Socket封装的接口解析http_header和传送http_body给上层App。(在此我声明下我习惯说调用本模块的模块为上层App,比如对于Gprs模块,Socket便为上层App,以此类推。)

那么Socket要给Http看什么呢?

首先要告诉Http.c自己有一个Socket结构体,里面包含了Socket流程所用的成员变量,然后还要告诉Http自己封装了哪些接口,等等以上。

Socket结构体里面包含什么呢?

写到此我犯了难,因为MtkApp单任务的Socket就足以应付上层App的联网需求,如果希望实现多任务,和单任务Socket会有多处不同,那么在此我写单任务还是写多任务呢?由于时间关系今天就先写到这里,正好看看程序员对于Mtk联网的需求有多大。如果需要请留言支持,我能通过此了解程序员对这部分的需求,那样我也能确定有继续写下去的必要。同时也请读者解答下我的问题,近日我会关注这篇博客,直到它宣告完成或者中止。

 

是不是没有人在MTK行业里面啊?没有的话我就不写下去了呀·

 

联网部分代码全部为笔者原创,版权所有,转载请注明出处,商业使用请联系作者。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息