Связь UDP с некоторым интерфейсом (с использованием примера кода UDP Echo, проблема с main.m) - PullRequest
1 голос
/ 09 февраля 2011

Я загрузил пример кода UDPEcho от Apple, чтобы установить простое UDP-соединение с устройством. Я могу установить «соединение», устанавливая ip и порт моего устройства на предоставленном main.m,Анализируя мою консоль, я даже получаю положительный ответ от устройства от всего, что я посылаю с main.m.

Моя проблема в том, что main.m как есть не загружает .xib.Я попытался изменить его и поместить UIApplicationMain (argc,argv,nil,nil) и прочее, но в этом случае я получил загрузку по умолчанию .xib (с моим PrjctViewController), но я не получаю никакого ответа на консоли.В этом случае UDP-соединение вообще отсутствует.

Как я могу использовать пример UDPEcho для установки простого UDP-соединения с некоторым пользовательским интерфейсом?Что-то простое, например, пользователь может ввести IP-адрес и порт и получить ответ от устройства, которое будет отображаться на экране.Связь не является проблемой, так как я получаю ответы в консоли, вся проблема заключается в установке простого интерфейса при использовании этого примера кода.Я не знаю, как я могу "переопределить" main.m для загрузки .xib при сохранении моего соединения.Я уже пытался передать все функции из main.m моему PrjctViewController, но это, похоже, не решает мою проблему.Если у кого-то есть какой-нибудь пример, чтобы показать мне или идеи, чтобы просветить меня, я буду очень благодарен.

Ответы [ 3 ]

2 голосов
/ 09 февраля 2011

Запустите соединение в одном из запуска приложения, просмотра инициализации контроллера или делегата события кнопки.Обрабатывать соединение асинхронно или в фоновом потоке, чтобы не блокировать поток пользовательского интерфейса.

0 голосов
/ 26 апреля 2012

Для будущего проекта взгляните на CocoaAsyncSocket

CocoaAsyncSocket предоставляет простые в использовании и мощные библиотеки асинхронных сокетов для Mac и iOS. Классы описаны ниже.

GCDAsyncUdpSocket и AsyncUdpSocket являются сетевыми библиотеками сокетов UDP / IP.

0 голосов
/ 09 февраля 2011

Не делайте соединения в main.m.Как обычно, создайте приложение для iPhone и переместите код создания соединения в функцию-обработчик для ввода пользователем.Например, пользователь вводит IP и т. Д. И нажимает кнопку «Перейти».Вместо этого поместите настройку соединения в обработчик для кнопки «Перейти».

...