Перенаправьте звук iPhone через динамик, наушники или Bluetooth - PullRequest
3 голосов
/ 10 ноября 2010

Я хотел бы создать приложение, которое позволяет пользователю выбирать аудио-маршрут.т.е. пользователь может выбрать, будет ли аудио воспроизводиться через наушники, динамик или Bluetooth.Мое приложение не воспроизводит звук, но я хочу, чтобы песня воспроизводилась на iPhone с помощью встроенного музыкального приложения или любого другого мультимедийного проигрывателя, когда я выбираю динамик из приложения, она должна воспроизводиться через динамик, даже если гарнитураподключен.Можно ли управлять звуковой маршрутизацией на системном уровне из другого приложения.

Ответы [ 4 ]

1 голос
/ 10 ноября 2010

Я не нашел лучшего способа, чем использовать часть представления громкости мультимедийного проигрывателя.

Далее приведен фрагмент кода:

// Display the audio route button (Bluetooth / Speaker / iPhone)
UIView *mpVolumeViewParentView = [[UIView alloc] initWithFrame:CGRectMake(5, 50, 50, 40)];
mpVolumeViewParentView.backgroundColor = [UIColor clearColor];
mpVolumeViewParentView.clipsToBounds = YES;

MPVolumeView *systemVolumeSlider = [[MPVolumeView alloc] initWithFrame:CGRectMake(-290, 0, 320, 40)];
[mpVolumeViewParentView addSubview:systemVolumeSlider];
[systemVolumeSlider release];

[self.view addSubview:mpVolumeViewParentView];
[mpVolumeViewParentView release];

Это не идеальное решение, но оноделает работу.

1 голос
/ 10 ноября 2010

Я хотел сделать что-то похожее в одном месте.Если я правильно помню ... в устройстве есть физический выключатель, который закрывается, когда наушники вставлены.Эффективно делает невозможным маршрутизацию звука, так как больше нет никаких соединений между динамиками и остальной частью устройства.

0 голосов
/ 06 мая 2012

Начиная с iOS 4.2 MPVolumeView имеет два свойства для отключения нежелательных элементов:

showsVolumeSlider
showsRouteButton
0 голосов
/ 15 сентября 2011

Очевидно, что пользовательский контроль над аудио-маршрутизацией только через активацию устройства или регулировку громкости является намерением пользователя Apple.То, что делает приложение для телефона, недоступно обычным разработчикам.

"На самом деле приложения не могут направлять аудио туда, куда они хотят (даже приложения Apple!) ... мы (изнутри) отправляемаудио там, где этого хочет пользователь. "

http://lists.apple.com/archives/coreaudio-api/2009/Oct/msg00030.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...