В чем разница между платформами CoreBluetooth и ExternalAccessory?
Apple предоставляет следующие две платформы для связи с соседними устройствами Bluetooth с iOS.
Базовая структура Bluetooth обеспечивает классы, необходимые для приложений iOS и Mac для связи с устройствами, оснащенными беспроводной технологией Bluetooth с низким энергопотреблением.
Платформа External Accessory обеспечивает поддержку связи с внешним оборудованием, подключенным к устройству на базе iOS через Apple Lightning или 30-контактный разъем, или по беспроводной связи через Bluetooth.
Ранее я использовал каркас CoreBluetooth для успешной связи с устройствами Bluetooth. Тем не менее, я сейчас пытаюсь установить связь с принтером Bluetooth, и он не отображается при сканировании ближайших устройств. Используя платформу ExternalAccessory, это так.
Как эти две структуры различаются в том, что касается связи с устройствами Bluetooth? Почему разные устройства Bluetooth требуют использования разных платформ?
2 ответа
Существует два вида Bluetooth, Bluetooth LE, который очень ограничен в пропускной способности, но не требует сопряжения пользователей в приложении настроек, и Bluetooth Classic, который требует от пользователя сопряжения устройства, но дает вам больше функциональности и пропускной способности. CoreBluetooth поддерживает Bluetooth LE, и вы можете использовать его с учетной записью разработчика. Bluetooth Classic требует подключения к программе Apple MFi.
Базовая связь Bluetooth позволяет устанавливать связь только с Bluetooth-устройствами с низким энергопотреблением, используя профиль GATT.
Инфраструктура внешнего аксессуара обеспечивает связь с "устаревшими" устройствами Bluetooth с использованием таких профилей, как протокол последовательного порта (SPP). Для связи с устройствами, использующими платформу External Accessory, устройство должно быть сертифицировано по программе MFi.
Я также считаю, что для того, чтобы получить приложение, которое может взаимодействовать с устройством MFi, используя утвержденную платформу внешних аксессуаров, лицензиату MFi (т.е. поставщику принтера) необходимо предоставить некоторые документы для авторизации вашего приложения.