objective-c - iOS 使用GCDAsyncSocket建立长连接发送消息
怪我咯
怪我咯 2017-05-02 09:30:53
0
1
728

iOS 使用GCDAsyncSocket建立长连接发送消息,为什么没发送一条消息就要初始化GCDAsyncSocket一次,是不是我的代码哪里写错了

这个是发送消息按钮方法,当我GCDAsyncSocket初始化写到viewDidLoad,就服务器就接受不到消息

-(void)allPhotoAction:(UIButton *)btn{

//建立连接
NSString *host = @"192.168.0.199";
int port = 54111;
asyncsocket = [[GCDAsyncSocket alloc] initWithDelegate:self delegateQueue:dispatch_get_main_queue()];
asyncsocket.delegate = self;
NSError *error = nil;
if (![asyncsocket connectToHost:host onPort:port error:&error]) {
    //该方法异步
    GFFLog(@"%@",  @"连接服务器失败");
}

NSString *sendMessage = @"25";

[asyncsocket writeData:[sendMessage dataUsingEncoding:NSUTF8StringEncoding] withTimeout:-1 tag:1];

}

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(1)
给我你的怀抱

더 많은 공식 사례를 살펴보는 것이 좋습니다.

connectToHost을 호출하여 반환된 성공은 연결되었다는 의미가 아니라, 입력한 호스트와 포트에 문제가 없다는 의미일 뿐입니다. 연결 성공을 위한 콜백 메서드가 있으며 해당 메서드 이후에 writeData를 호출합니다. . 긴 링크를 유지하려면 각 쓰기/수신 후에 읽기를 호출하여 소켓이 계속 수신하도록 해야 합니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!