Я недавно начал использовать asyncsocket вместе с TCP-сервером Java.Возможно, этот код может помочь?
Чтобы записать в сокет, вам необходимо вызвать следующий метод из объекта asyncsocket
-(void)writeData:withTimeout:tag:;
Данные здесь должны быть объектом NSData.Вы можете легко преобразовать строки в NSData, выполнив
[someStringObject dataUsingEncoding:NSUTF8Encoding];
Для чтения из сокета просто вызовите этот метод
-(void)readDataWithTimeOut:tag:;
pass -1 для тайм-аута, если вам не нужен тайм-аут.
И это все.Чтение / запись с использованием cocoaasyncsocket намного проще, чем работа с сокетами в Java, где вам нужны datainputstream и dataoutputstream и другие подобные вещи.
Важные методы делегата:
-(void)onSocket:didReadData:withTag: gets called whenever the socket reads some data.
Пример этого делегата: ..
-(void)onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag{
NSString *string = [[NSString alloc] initWithBytes:[data bytes]
length:[data length]
encoding:NSUTF8StringEncoding];
//Do what ever comparison you'd like here.
}
Если есть что-то, чего вы не понимаете, дайте мне знать иЯ постараюсь ответить на ваши сомнения.