Intereting Posts
Рисование перекрывающихся фигур в drawRect с разным цветом вызывает кратковременное кровотечение при включении антиалиасинга Являются ли файлы в папке документов автоматически перезаписаны? Показывать аннотацию текущей позиции по умолчанию Принять как UIButtons, так и UIViews как параметры для метода Получение высоты UIKeyboard при отображении TextField Facebook iOS SDK и обратная совместимость UITableView дважды прокручивается при нажатии UITextField, за которым следует UIDatePicker Не удалось создать тестовый кошелек ApplePay Пользовательский значок UIBarButtonItem Как связать объекты, которые подклассифицированы из PFObject? – : непризнанный селектор, отправленный в экземпляр …? cocos2d 3.0 как обращаться с прикосновением глотания с приоритетом Нажмите кнопку «Обнаружить» с помощью оповещения о блокировке CLLocationManager Слияние двух проектов xcode и запуск на основе условия WCSession работает только один раз

iOS «Ошибка NSLocalizedDescription = Broken pipe» для UDP

Я столкнулся с этой ошибкой (UDP didNotSendDataWithTag: 213 Ошибка: Ошибка домена = NSPOSIXErrorDomain Code = 32 «Broken pipe» UserInfo = 0x165acab0 {NSLocalizedDescription = Broken pipe}) после того, как приложение вернется после блокировки экрана.

Примечание. Перед блокировкой экрана запускается цикл отправки udp, который отправляет данные udp каждые 10 секунд.

Я попытался снова открыть сокет, но это не сработало. Кажется, что сокет не был действительно закрыт вообще. Это просто, что данные не могут быть отправлены. Кто-нибудь знает решение этой проблемы? Большое спасибо!

Я смог решить проблему, закрыв udp-сокет, когда приложение перешло на задний план

- (void)applicationDidEnterBackground:(UIApplication *)application { //close UDP Socket here } 

а затем снова включите его, когда он вернется на передний план.

 - (void)applicationWillEnterForeground:(UIApplication *)application { //open UDP Socket again and continue tasks } 

Надеюсь, это поможет другим разработчикам, когда они столкнутся с этой проблемой. 🙂