Как настроить приложение ios для воспроизведения музыки как для устройств A2DP, так и для HFP Bluetooth - PullRequest
0 голосов
/ 20 ноября 2018

У нас проблема с нашим приложением для iOS.Одной из наших основных функций является воспроизведение аудио, и часть этого, мы автоматически проверяем в нашем приложении, подключена ли гарнитура к устройству iPhone (это может быть Bluetooth, обычная гарнитура)

В настоящее время у нас есть проблема сНа всех Bluetooth-устройствах качество звука очень низкое.Мы заметили, что с каждым устройством Bluetooth воспроизведение аудио передается по протоколу HFP.

Мы попробовали различные конфигурации для экземпляра AVAudioSession, единственная конфигурация, которая работает как с Air-pods, так и с обычными устройствами Bluetooth, является следующей

    AVAudioSession *sessionInstance = [AVAudioSession sharedInstance];
NSError* theError = nil;
BOOL result = YES;
result = [sessionInstance setCategory:AVAudioSessionCategoryPlayAndRecord withOptions:AVAudioSessionCategoryOptionAllowBluetoothA2DP | AVAudioSessionCategoryOptionAllowBluetooth error:&theError];
if (!result)
{
    NSLog(@"setCategory failed");
}

result = [sessionInstance overrideOutputAudioPort:AVAudioSessionPortOverrideNone error:&theError];

if (!result)
{
    NSLog(@"overrideOutputAudioPort failed");
}

result = [sessionInstance setActive:YES error:&theError];
if (!result)
{
    NSLog(@"setActive failed");
}

Несмотря на то, что звук есть с обычными устройствами Bluetooth и Air-pods, качество звука на устройствах Bluetooth (в Air-pods звук хороший) действительно плохое.

Мы пытались изменитькатегория от воспроизведения и записи до воспроизведения только, но если мы изменим ее на воспроизведение, все устройства Bluetooth больше не будут автоматически распознаваться в нашем приложении (как в случае без звука вообще)

Хотелось бы получить идеи по этому вопросу,спасибо всем

...