先去github的站点下载最新的包,然后先看看介绍。

写的比較具体了

https://github.com/robbiehanson/CocoaAsyncSocket/wiki/Intro_GCDAsyncSocket

网上非常多都是老版本号的帖子。官方已经推出了GCDAsyncSocket来取代曾经老的AsyncSocket。

我的项目是no-ARC的,这个框架仅仅有arc的版本号。所以引入GCDAsyncSocket的.h和.m文件后。改动xcode中项目的属性。

1)targets中“build settings”中找到Compiler for c/c++/Objective-c的选项。

改为Apple LLVM compiler 3.0 仅仅要是3.0或以上就能够

2)在“build phases”中“compile sources”中找到GCDAsyncSocket.m,添加參数-fobj-arc

3)引入GCDAsyncSocket所须要的框架,CFNetwork和security这两个

这样就能够在我的no-arc的项目中来使用GCDAsyncSocket的库了。

以下是我写的连接echoServer的client

- (void) initNetwork{

socket= [[GCDAsyncSocketalloc] initWithDelegate:selfdelegateQueue:dispatch_get_main_queue()];

NSError*error = nil;

if(![socketconnectToHost:@"serverIP"onPort:serverport error:&error]) {

NSLog(@"is aready connected");

}

}

- (void) sendData{

NSLog(@"send Message to server");

NSData*datas = [@"client send msg"dataUsingEncoding:NSUTF8StringEncoding];

[socket writeData:datas withTimeout:-1 tag:1];//这里tag没用到

[socket readDataWithTimeout:-1 tag:1];//这句必须加。否则收不到server返回数据

}

- (void) socket:(GCDAsyncSocket*)sock didConnectToHost:(NSString*)host port:(uint16_t)port{

NSLog(@"connected to the server");

}

- (void) socket:(GCDAsyncSocket*)sock didReadData:(NSData*)data withTag:(long)tag{

NSString*msg = [[NSStringalloc] initWithData:data encoding:NSUTF8StringEncoding];

NSLog(@"return message=%@",msg);

}

- (void) socketDidDisconnect:(GCDAsyncSocket*)sock withError:(NSError*)err{

NSLog(@"close connected");

}


最新文章

  1. [转]ORA-01034: ORACLE not available如何解决
  2. Greedy:The Water Bowls(POJ 3185)
  3. daterangepicker 双日历/格式化日期/日期限制minDate,maxDate
  4. 二模Day2题解
  5. 通过GeoIP2分析访问者IP获取地理位置信息
  6. 51单片机C语言学习笔记3: 存储器结构
  7. 在用TabbarController中出现navigationController 嵌套报错
  8. 框架基础:ajax设计方案(三)---集成ajax上传技术
  9. 在.NET Core中处理一个接口多个不同实现的依赖注入问题
  10. Java:日期类Date与Calendar
  11. POJ1017 Packets---贪心
  12. js数字串传参时变科学计数法
  13. LeetCode编程训练 - 位运算(Bit Manipulation)
  14. centos6.8 安装wget
  15. sscanf的字符串格式化用法
  16. 给iOS开发新手送点福利,简述UITableView的属性和用法
  17. 《JavaScript高级程序设计》5.5 Function类型
  18. 教你用Python解决非平衡数据问题(附代码)
  19. opencv产生随机的颜色
  20. JUC-Callable

热门文章

  1. Selenium - WebDriver: Waits
  2. Struts2请求流程
  3. IO Streams:来源于命令行的IO
  4. Android实现金额显示小数点后两位
  5. arcsde10.0 for oracle11g 分布式安装教程
  6. 一个 Java 的 Socket 服务器和客户端通信的例子
  7. BZOJ3166 [Heoi2013]Alo 【可持久化trie树 + 二分 + ST表】
  8. 如何通过IP地址分辨公网、私网、内网、外网
  9. ASP.NET的最新安全漏洞Important: ASP.NET Security Vulnerability
  10. 【转】SqlCacheDependency的使用 强大的功能