Как программно подключить известное устройство MIDI Bluetooth

Я могу программно подключить известное устройство MIDI Bluetooth LE, но устройство MIDI отсутствует в списке, когда я использую:

ItemCount destCount = MIDIGetNumberOfDestinations();
MIDIEndpointRef destMIDI = MIDIGetSource(i);

Когда я вручную касаюсь (на экране iPhone) «MIDI-устройства», указанного в списке устройств диспетчера Bluetooth, это работает. Что я не так? Большое спасибо за помощь.


person Walter Schurter    schedule 05.03.2018    source источник
comment
У меня такое ощущение, что ваш текущий код находит только неизвестные устройства Bluetooth в пределах досягаемости. Попробуйте выполнить поиск известных устройств или удалите MIDI-устройство из списка известных и посмотрите, что произойдет.   -  person ytpillai    schedule 05.03.2018
comment
Ваш код неполный и не компилируется, т.е. е. потому что i неизвестно.   -  person Amin Negm-Awad    schedule 06.03.2018
comment
ItemCount sourceCount = MIDIGetNumberOfSources(); for (ItemCount i = 0; i ‹ sourceCount; ++i) { sourceMIDI = MIDIGetSource(i); источникMIDIпоследний = источникMIDI; if (sourceMIDI › 0) { if (([getDisplayName(sourceMIDI) containsString:MD-BT01]) ){ [arrayForComboBox1 addObject:getDisplayName(sourceMIDI)]; BTchannelSource[countComboBox1] = i; подсчетComboBox1++; } } }   -  person Walter Schurter    schedule 06.03.2018
comment
Вот что он делает с ручным подключением:   -  person Walter Schurter    schedule 06.03.2018
comment
Подключение к периферийному устройству с UUID 447050BF-CFBA-479C-B284-48EE4088BB72... Проверка статуса сопряжения... Аутентификация сопряжения прошла успешно. Указание драйверу подключиться к периферийному устройству с UUID 447050BF-CFBA-479C-B284-48EE4088BB72 Отключение от пользовательского интерфейса для периферийного устройства ‹CBPeripheral: 0x1c4111820, идентификатор = 447050BF-CFBA-479C-B284-48EE4088BB72, имя = MD-BT01, состояние = подключено› . Драйвер будет управлять соединением.   -  person Walter Schurter    schedule 06.03.2018


Ответы (1)


Когда я использую «MIDIGetNumberOfDestinations()» или «MIDIGetSource(i)» перед программным подключением устройства Bluetooth, устройство MIDI никогда не появляется в списке, если только я не перезапущу приложение.

В противном случае теперь я мог программно подключить MIDI-устройство.

person Walter Schurter    schedule 22.03.2018