Я работаю с AsyncSocket для iOS. (https://github.com/robbiehanson/CocoaAsyncSocket)
Я написал свой собственный класс для обработки соединения с AsyncSocket. Я написал метод writeDate: (NSString *) data и добавил функции обратного вызова AsyncSocket в свой класс.
-(void)writeData: (NSString*) data
{
NSString *test = [NSString stringWithFormat:@"test"];
NSData *raw = [test dataUsingEncoding:NSUTF8StringEncoding];
[socket writeData:raw withTimeout:-1 tag:1];
}
Соединение работает отлично, и если я пытаюсь отправить сообщение в «didConnectToHost» после [sock startTLS:setting], оно работает.
Но если я попытаюсь отправить сообщение своим методом (writeDate: (NSString *) data) и вызовом:
MyClass *test = [MyClass sharedSSLConnection];
[test writeData:@"test"];
Это не удалось. Я думаю, проблема в том, что рукопожатие не готово, когда метод хочет отправить сообщение в сокет. Но как я могу это решить? Я не нашел никакого решения.
Спасибо за вашу помощь!