Как отличить guish между AirPods и подключенными наушниками? - PullRequest
0 голосов
/ 16 июня 2020

Мне нужно проверить, является ли искомое устройство устройством AirPods. Не знаю, с чего начать. Надеюсь на вашу помощь. Спасибо большое!

 AVAudioSessionRouteDescription *currentRount = [AVAudioSession sharedInstance].currentRoute;
    AVAudioSessionPortDescription *outputPort = currentRount.outputs[0];
    if ([outputPort.portType isEqualToString:AVAudioSessionPortBluetoothA2DP]) {

    } else {

    }

1 Ответ

0 голосов
/ 16 июня 2020

У меня нет большого опыта работы с аудиофреймами iOS, особенно с модулем Bluetooth. Но я немного почитал. Вы можете начать с этого:

Как я могу определить, подключен ли HFP или A2DP в iOS?

И список протоколов BT (хорошее чтение) :

http://monkeycanz.com/hrf_faq/what-are-bluetooth-a2dp-avrcp-hfp-hsp-protocols/


А затем, чтобы ответить на ваш вопрос, вот документация Apple для AVAudioSessionPort

https://developer.apple.com/documentation/avfoundation/avaudiosessionport?language=objc

Отсюда вы можете увидеть константы для этой структуры, например:

AVAudioSessionPortHeadphones - Вывод на проводные наушники.

AVAudioSessionPortHeadsetMic - В проводной гарнитуре встроенный микрофон.

Так вот. Imo, если у вас есть такие константы (и, пожалуйста, проверьте и другие константы), у вас есть то, что вы ищете.

Надеюсь, это поможет!

...