2016-10-16 3 views
1

Я хотел сделать приложение, которое общается с аксессуарами MIDI-интерфейса для iOS. Я купил лицензионное устройство MFI (iConnectMidi), подключился к нему и создал простой проект, который вызывает [[EAAccessoryManager sharedAccessoryManager] connectedAccessories] после запуска приложения, но не смог получить доступ к аксессуарам. Мне было интересно, может ли кто-нибудь, у кого есть подобный опыт, пролить свет на этот ?EAAccessoryManager не читает аксессуар MFI

+0

Я не думаю, что вы можете общаться с устройствами MFI, если вы не являетесь владельцем лицензии. В противном случае любой человек мог написать код, чтобы поговорить с любым устройством, которое, очевидно, было бы дырой в безопасности. – par

+0

Но некоторые аксессуары (например, тот, который я купил) могут работать со многими приложениями, как это возможно? – Sterling

+0

Хорошо, вы добавили спецификатор протокола в свой Info.plist (через 'UISupportedExternalAccessoryProtocols')? – par

ответ

1

Как указано в комментариях выше, если вы не укажете строку протокола в plist, приложение не будет распознавать устройство. В моем случае я использую интерфейс midi MFI, EAAccessoryManager не будет читать устройство, потому что у меня нет какой-либо установки протокола для поля в файле plist. Тем не менее, я смог обнаружить устройство с использованием среды CoreMidi. Есть небольшой пример кода, который я нашел https://github.com/petegoodliffe/PGMidi, если кто-то когда-либо приходит к такому же замешательству, которое у меня было.

Смежные вопросы