2013-11-03 2 views
0

Вот мой код объектива-c ... Я пробовал код, который тоже закомментирован, но не повезло. Я просто хочу, чтобы это подключилось.GCDAsyncSocket - Как его подключить?

@implementation ViewController 
- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    //get socket connecting... 
    NSError *err = nil; 

    uint16_t thePort = htons(1234); 

// struct sockaddr_in ip; 
// ip.sin_family = AF_INET; 
// ip.sin_port = htons(thePort); 
// inet_pton(AF_INET, "192.168.2.5", &ip.sin_addr); 
//  
// NSData* host = [NSData dataWithBytes:&ip length:ip.sin_len]; 
//  
// if(![self.socket connectToAddress:host error:&err]) { 
//  NSLog(@"Failed to connect... %@", err); 
// } 


    if(![self.socket connectToHost:@"192.168.2.5" onPort:thePort error:&err]) { 
     NSLog(@"Failed to connect %@", err); 
    } 
    // Do any additional setup after loading the view, typically from a nib. 
} 

Когда я запускаю его это все, что я получаю ...

2013-11-02 23:02:10.404 bonfire.alpha0.0[3892:70b] Failed to connect (null) 

На стороне сервера я использую простую реализацию эхо-сервера (может быть найден https://github.com/zappala/python-networking-and-threading/blob/master/echo-server/echoserver.py). Я знаю, что физическая связь между клиентом и сервером (192.168.2.5) хороша, потому что когда я запускаю echoclient.py с клиентского компьютера, он работает нормально.

ответ

0

Хорошо, я нашел ошибку, очень noobish one haha. Я не запускал GCDAsyncSocket должным образом. Вот правильный код для его запуска.

self.socket = [[GCDAsyncSocket alloc] initWithDelegate:self.sDelegate delegateQueue:dispatch_get_main_queue()]; 
Смежные вопросы