Приложение iOS 4 VOIP отвечает в фоновом режиме - PullRequest
4 голосов
/ 13 августа 2010

У меня есть приложение для iPhone VOIP, которое справляется с мульти-мульти передачей и приемом (т.е. телеконференциями), настроенными с использованием разъемов BSD.Я хотел бы, чтобы он мог отвечать на входящие запросы, когда он находится в фоновом режиме, но из того, что я могу понять о документах iOS 4, я могу сделать это только для объекта NSStream (или CFRead / WriteStream), установив для свойства NSStreamNetworkServiceTypeVoIP.,Это небольшая проблема, так как моя система является приложением на основе сокетов UDP BSD.Все принимается и отправляется через один сокет UDP.

Нужно ли мне переписывать мое ядро ​​передачи / приема аудио для обработки потоков NSSt или есть способ получить iOS 4 для обработки моего сокета BSD?по аналогии с NSStream?Я предполагаю, что это может быть проблемой, поскольку NSStream основан на событиях.

Можно ли будет определить, когда приложение переходит в фоновый режим, и создать временный объект NSStream, который будет передавать данные через соответствующую обработкуа потом продолжить как обычно?Можно ли вообще создать UDP NSStream?

Есть идеи?

1 Ответ

5 голосов
/ 13 августа 2010

Вы можете создать сокет из файлового дескриптора с помощью CFSocketCreateWithNative (), а затем создать пару потоков с помощью CFStreamCreatePairWithSocket (). Это может позволить вам использовать их в сокете UDP. При условии, что потоки не читают данные, если вы не спросите, возможно, вам удастся избежать использования FD напрямую.

Удачи с этим, хотя!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...