Как транслировать сервис bluetooth в ios с помощью corebluetooth?

Если я хочу, чтобы мое устройство iOS действовало как «сервер» и транслировало свои службы Bluetooth на другие устройства iOS, как бы я использовал инфраструктуру core-bluetooth (или любую другую инфраструктуру iOS) для реализации этого? До сих пор все, что я видел из фреймворка corebluetooth, — это то, как писать вещи на стороне клиента. (Сканирование, подключение к существующим bluetooth-сервисам)


person user1832986    schedule 18.11.2012    source источник


Ответы (2)


Вы можете использовать пример проекта OSX под названием DNSSDObjects. Основные классы (три из них) прекрасно работают под iOS. Код требует нескольких небольших изменений для работы с Bluetooth (как есть, они работают только с WiFi). См. мой ответ на другой вопрос для необходимых изменений кода.

В основном вы используете любой код, который вам нужен для настройки вашего сервера и начинаете принимать соединения через сокеты. Затем вы используете класс DNSSDRegistration для рекламы своего сервера через Bonjour.

Два других класса, DNSSDBrowser и DNSSDService, могут использоваться клиентским кодом iOS для поиска сервера, или любое приложение или программа, которые могут найти службы Bonjour, также смогут найти ваш сервер.

person rmaddy    schedule 18.11.2012

Есть два отличных видео WWDC, которые показывают, как действовать как клиент или сервер, используя соответствующее устройство iOS. Их можно найти здесь, вам нужны сеансы 703 и 705.

Загрузки исходного кода, который они используют, можно найти здесь< /а>. Вам понадобится учетная запись разработчика (бесплатно) для входа в систему и просмотра / загрузки.

person mwright    schedule 29.11.2012