IPhone EAAccessoryManager возвращает пустой NSArray - PullRequest
2 голосов
/ 28 декабря 2011

Я новичок здесь, и я подозреваю, что упускаю что-то очевидное, но поиск в Интернете и чтение документов Apple не помогают.Я застрял, так что идет.

У меня есть iphone 4 под управлением IOS 4.2.10 с подключенной Bluetooth-гарнитурой Samsung HM1100.Я уверен, что он подключен, потому что общие настройки iphone говорят так, и iphone отвечает, когда я нажимаю кнопку вызова на HM1100.Я не могу перейти на IOS 5 и CBCentralManager.Предполагается, что HM1100 совместим с iphone4 (версия Bluetooth 2.1 + EDR).

Мое приложение iphone импортирует ExternalAccessory / ExternalAccessory.h

, а код имеет следующие строки

NSArray *accessories = [[EAAccessoryManager sharedAccessoryManager]connectedAccessories];

NSLog( @"acessories %@", accessories);

Код компилируется и успешно выполняется на iphone, подключенном к отладчику Xcode 4 на MacBook Pro, и распечатывает пустой массив следующим образом.

2011-12-27 15:03:25.106 View Switcher[102:307] acessories (
)

Я ожидал, что он вернет хотя бы один EAAccessory объект в массиве.Должно быть, я что-то делаю не так.

спасибо, ab

Ответы [ 2 ]

3 голосов
/ 28 декабря 2011

EAAccessory только для лицензированных аксессуаров Made-For-iPod. Если он не лицензирован и все, что он не будет отображаться в списке. Вы не можете просто подключить произвольную гарнитуру Bluetooth или другое устройство.

0 голосов
/ 29 апреля 2013

Как отметил Брэд Ларсон, возможно, ваш аксессуар использует стандартные профили Bluetooth (например, профиль громкой связи), поэтому он не отображается в списке.

...