Какой самый простой способ подключить устройство к iPad из приложения? - PullRequest
10 голосов
/ 03 февраля 2012

Я работаю над выпуском основного продукта для моей компании. Мы разрабатываем новое устройство, которое хотели бы интегрировать в приложение для iOS. (К вашему сведению, мы недавно были приняты в программу Apple MFi, поэтому мы прошли этот шаг.)

Мы хотим создать аппаратную / программную экосистему, в которой наши пользователи смогут запускать наше приложение для iPad (да, оно относится только к iPad, а не к устройствам iPhone или iPod Touch), и приложение автоматически обнаружит и установит связь с любым оборудованием, разработанным нами для непосредственной близости.

Это означает, что мне потребуется реализовать некоторую форму процесса подключения устройства как на iPad, так и на оборудовании.

Есть ли способ закодировать автоматическое подключение к устройству Bluetooth из приложения iOS?

Я знаю о Core Bluetooth Framework, который обладает этой возможностью, однако он работает только с новым iPhone 4S. Это не вариант.

Я также исследовал платформу External Accessory Framework, которую можно использовать для подключения к внешним устройствам, независимо от того, подключены ли они через порт iPod или Bluetooth. Это вариант, но, если я правильно понимаю, наше оборудование уже должно быть сопряжено с iPad, прежде чем программное обеспечение iOS сможет подключиться к нему. Это менее чем предпочтительно, потому что, хотя многие из наших устройств могут не находиться в непосредственной близости в один момент времени, наши клиенты могут потенциально иметь устройства 100-х, к которым они могут захотеть подключиться с помощью нашего программного обеспечения.

Каковы мои разумные варианты или альтернативы? Конечная цель - предоставить нашим пользователям очень простые средства для подключения к нашим устройствам из нашего программного обеспечения на iPad.

ПРИМЕЧАНИЕ: Я НЕ ДОЛЖЕН делать джейлбрейк iPad или нарушать какие-либо соглашения Apple TOS.

ОБНОВЛЕНИЕ (3-7-2012) Сегодня я увидел, что «новый iPad» (как его официально называют) будет поддерживать Bluetooth 4.0 . Я предполагаю, что это означает, что это устройство iPad сможет использовать Core Bluetooth Framework. Это не сразу решает мою проблему, потому что мы хотим оставаться совместимыми хотя бы с «последним поколением» iPad, но на это стоит обратить внимание тем, кто ищет такой ответ.

Ответы [ 2 ]

1 голос
/ 18 февраля 2012

Невозможно подключить устройство iOS к устройству Bluetooth без предварительного сопряжения. Он специально создан Apple таким образом, чтобы уменьшить вероятность того, что кто-то сможет подключить устройство Bluetooth без ведома пользователя. Если сопряжение каждого устройства неприемлемо (и звучит так, как оно есть), и вы не хотите разрабатывать ключ, единственный оставшийся путь, который я вижу, - это сделать ваши устройства способными передавать данные между ними, как ячеистая сеть. Таким образом, пользователю потребуется выполнить сопряжение только с одним устройством, и это сопряженное устройство будет передавать данные между другими устройствами и iPad.

1 голос
/ 09 февраля 2012

Одной из ваших альтернатив будет переход на WiFi (AdHoc или Infrastructure) с Bonjour.Например, вы сможете обнаружить устройство поблизости (если оно поддерживает собственный AdHoc, то по SSID; если оно находится в инфраструктурной сети, то по заявленной услуге).Один большой недостаток состоит в том, что вы не можете подключиться напрямую (из приложения) к сети устройства - пользователю придется делать это вручную.

Что касается BT: большой недостаток - отсутствие последовательного протокола (не реализованов iPhone / iPod / iPad).

...