Использование фреймворка CoreBluetooth/CBCentralManager.h

Я впервые использую фреймворк CoreBluetooth в своем коде Objective-c.

Моя версия iPhone — iPhone-3GS.

Когда я запускаю свой код, я получаю вывод: «Платформа или оборудование не поддерживает Bluetooth с низким энергопотреблением».

Я видел спецификации 3GS и узнал, что он поддерживает v2.1 с A2DP. Но я ожидал, что Bluetooth включен или выключен.

Как я могу получить статус Bluetooth с помощью кода Objective-C, используя платформу CoreBluetooth?

Как получить статус Bluetooth через Objective-c?

Может ли кто-нибудь поделиться ссылкой или учебником по этому поводу?


person user2533604    schedule 04.09.2013    source источник
comment
Bluetooth с низким энергопотреблением не поддерживается в iPhone 3gs. BLE (Bluetooth Low Energy) поддерживается начиная с модели iPhone4s.   -  person Tendulkar    schedule 04.09.2013


Ответы (1)


CoreBluetooth — это API, предназначенный для Bluetooth LE в iOS5+. Он не поддерживает «обычный» Bluetooth или любые «обычные» профили Bluetooth. Насколько я помню, первым iOS-устройством, поддерживающим Bluetooth LE, был iPhone 4S — у вашего 3GS просто нет нужного железа. Bluetooth LE является частью Bluetooth 4.0 и предназначен для считывания данных с датчиков и тому подобного... https://en.wikipedia.org/wiki/Bluetooth_low_energy

У вас точно не заработает на вашем 3GS, извините.

person Christoph    schedule 04.09.2013
comment
Я пытался использовать частный фреймворк BluetoothManager из GitHub, но не получил исключенного вывода. Мне просто нужен способ получить статус bluetooth через Objective-c. Любая другая структура или любая ссылка, полезная в этом сценарии? - person user2533604; 04.09.2013
comment
Настоящая проблема здесь в том, что Apple не хочет, чтобы кто-либо разрабатывал приложения, использующие простой прямой Bluetooth, поэтому на нем нет общедоступного API. Пожалуйста, поделитесь ссылкой на ваш фреймворк, мне любопытно посмотреть, для чего он предназначен. - person Christoph; 04.09.2013
comment
@Christoph - Ну, вроде как. Если стандартное устройство Bluetooth (не LE) одобрено MFi, вы можете общаться с ним через инфраструктуру внешних аксессуаров. Однако для большинства людей LE и Core Bluetooth — это способ общения с новым классом универсальных беспроводных аксессуаров. - person Brad Larson; 04.09.2013
comment
@BradLarson - Согласен, это вариант. Хотя я бы посчитал, что одобренное MFi ограничение не является простым bluetooth. Тем не менее, вы бы не стали использовать CoreBluetooth для связи с этими устройствами, не так ли? - person Christoph; 04.09.2013