iOS AdHoc данные датчика Wi-Fi - PullRequest
2 голосов
/ 07 июля 2011

Мой iPhone подключается через специальный Wi-Fi к сенсорному модулю WiFi.

Задача состоит в том, чтобы закодировать приложение, использующее этот сенсорный модуль.Но я не уверен, какой именно API использовать для лучшей разработки этой реализации.

Я начал изучать класс CocoaAsyncSocket , так как он кажется подходящим инструментом для такого использования.

Всегда ли пользователь должен вручную подключаться к устройству adhoc wifi?(через приложение «Настройки») или мое собственное приложение может обрабатывать поиск, создание и разрыв соединения Wi-Fi?

Я сомневаюсь, что iOS позволяет мне программно переключать, включен ли Wi-Fi или нет.Как только данные датчика будут получены, какой контейнер лучше всего обработает поток?Например, на других платформах я закодировал вращающийся буфер очереди.

Спасибо за ваш вклад.

Редактировать: Данный протокол является прямым ASCII в формате CSV.Не HTTP, FTP и т. Д. Просто необработанные данные.Приложение должно просто открыть порт на подключенном IP и читать / писать.

Ответы [ 2 ]

2 голосов
/ 07 июля 2011

Ваше приложение не может включить или выключить Wi-Fi или выбрать сеть Wi-Fi.

Без дополнительной информации о том, по каким протоколам работает этот модуль датчика Wi-Fi, никто не сможет дать более расплывчатые рекомендации. Если модуль может передавать данные через http-соединение, это, вероятно, было бы идеально. Если вашему программному обеспечению потребуется открыть соединение через определенный порт и обмениваться данными через что-то отличное от http или ftp , ваша работа будет немного сложнее. CFNetwork и проекты, полученные из его использования, такие как CocoaAsyncSocket, который вы упомянули. Вы можете увидеть другую реализацию HTTP-соединения через CFNetwork в ASIHTTPRequest , которая может помочь в качестве справочного материала для обработки потоков загрузки, операций с очередями и т. Д.

Что касается хранения данных, опять же, трудно дать какие-либо конкретные рекомендации без дополнительной информации. Если вы хотите сохранить данные в файловой системе устройства iOS, NSData , вероятно, удовлетворит ваши потребности. Если вам нужно / предпочитаете использовать очередь для буферизации данных, в NSArray есть категория реализации s , которая обеспечивает семантику очереди. Ссылка на CHCircularBuffer в этой статье SO устарела, но этот проект github , кажется, имеет ее.

edit: Вот официальная версия CHDataStructures. Я не знаю, является ли это улучшением по сравнению с предыдущей ссылкой, но, похоже, она обновлена ​​для более свежего iOS SDK.

1 голос
/ 08 июля 2011

Добавьте SSID вашей сети Wi-Fi ad hoc в настройках. Когда вы увидите SSID сети, щелкните стрелку и выберите «Подключиться автоматически». После этого телефон автоматически подключится, когда попадет в зону действия. После этого два устройства могут общаться с помощью обычных API сокетов.

...