Имена протоколов Bluetooth для UISupportedExternalAccessoryProtocols

Я использую iOS9 и Swift 2 для создания приложения, которое получает уведомление, когда iPhone подключен/отключен от Bluetooth автомобиля. Я использую EAAccessoryManager.sharedAccessoryManager().connectedAccessories для получения списка подключенных аксессуаров.

Я добавил UISupportedExternalAccessoryProtocols в Info.plist, но не знаю, какие протоколы добавить. Может ли кто-нибудь подтолкнуть меня в том направлении, где я могу получить эти имена протоколов. Я надеюсь, что имена протоколов являются общими, что они работают с устройством Bluetooth в любом автомобиле.

Когда я запускаю приложение, я получаю 0 подключенных устройств, хотя мой телефон подключен к bluetooth моей машины.

Спасибо!


person Jacob Thomas    schedule 25.04.2016    source источник
comment
Я считаю, что этот фреймворк предназначен только для аксессуаров MFi. Вы не увидите стандартные аксессуары Bluetooth, такие как автомобильное Bluetooth-соединение.   -  person Paulw11    schedule 25.04.2016
comment
@Paulw11Paulw11 Есть ли способ увидеть общие аксессуары? Я специально хочу знать, находится ли пользователь в своей машине из сопряжения Bluetooth 2. Некоторые приложения делают это, но я пока не знаю, как.   -  person NickG    schedule 14.09.2017
comment
Вы можете обнаружить подключение к аудиоустройству Bluetooth через AV-фреймворк, но ни Core Bluetooth, ни External Accessory framework не предоставят вам эту информацию.   -  person Paulw11    schedule 14.09.2017


Ответы (3)


Вы должны запросить у провайдера имя протокола данного оборудования.

Но насколько я понял эти аксессуары-штука, требования по обнаружению оборудования через Bluetooth (со специальным iаксессуарным протоколом) > протокол iAP):

  1. оборудование содержит этот mfi-chip
  2. вы добавили «Идентификатор плана продукта Made for iOS (MFi PPID)» в свой info.plist (в Поддерживаемые протоколы внешних аксессуаров)

PS: ваш телефон подключен через Bluetooth Low Energy

person Sandu    schedule 05.04.2017
comment
Ваша первая ссылка больше недоступна. Спасибо! - person tolotra; 13.03.2019

Вы можете использовать образец приложения для EA.Framework, когда вы запустите его, он обнаружит ваши классические аксессуары Bluetooth вокруг вашего устройства iOS. Если ваше устройство находится в таблице примера приложения, проверьте его информацию, у вас будет соответствующий протокол. Запишите его в свой .plist для связи. Так случилось в моем случае.

person aukana17    schedule 12.08.2016

Имя протокола, указанное в файле info.plist проекта iOS, определяется конструктором аппаратного продукта. У него должно быть уникальное имя, обычно использующее обратную форму DNS: com.yourcompany.product_name.

person andreaciri    schedule 02.07.2018