Я работаю над клиентским приложением чата, которое подключается к серверу чата.Когда я получаю всплывающие уведомления (например, SMS-сообщение), iPhone переводит приложение в неактивное состояние - отлично.Проблема, с которой я столкнулся, заключается в том, что после отклонения уведомления приложение потеряло все сетевые подключения.Я читал в других местах, что это не должно происходить, но я не уверен, что мне не хватает!
Вот фрагмент кода, который я использую для создания потоков чтения и записи.
- (void) initNetworkCommunication {
//set up read and write streams
CFReadStreamRef readStream;
CFWriteStreamRef writeStream;
//connect to host at this address and this port
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)@"somewebsite.org", 3333, &readStream, &writeStream);
//open socket connection
inputStream = [(NSInputStream *)readStream retain];
outputStream = [(NSOutputStream *)writeStream retain];
[inputStream setDelegate:self];
[outputStream setDelegate:self];
[inputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[outputStream scheduleInRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
[inputStream open];
[outputStream open];
}
Сетевое соединение также теряется при отправке приложения в фоновом режиме.Я бы тоже хотел это исправить, но сейчас основной проблемой являются всплывающие уведомления, отключающие пользователя.