Я разрабатываю приложение для iPhone, которое взаимодействует с устройством, отличным от iOS, через Wi-Fi. Мое приложение использует VOIP. Я настроил потоки и добавил необходимые UIBackgroundModes в свой plist .
Проблема в том, что приложение не получает никакой информации от внешнего устройства, когда оно входит в фоновый режим.
Может ли кто-нибудь сказать мне, если я что-то упустил?
Ответ 1 · рейтинг 1 · Divyang Mithaiwala
Не уверен в реальной проблеме.
Убедитесь, что в соответствии с фоновым приложением VOIP для iOS оно позволит только TCP-соединению быть активным и доступным в фоновом режиме.
Поэтому, если вы/ваш стек используете сокет UDP для VOIP, замените его на TCP.
В случае, если порт UDP остается привязанным к вашему приложению, но он неактивен в фоновом режиме и становится активным в режиме переднего плана.
Ответ 2 · tman78
Я предполагаю, что вы правильно установили необходимые фоновые режимы в plist на основе вашего утверждения. Именно в массиве задается ключ и требуемое значение для аудио и voip. Также у вас есть ключ "приложение не работает в фоновом режиме", добавленный в plist и установленный в NO.