У меня есть аудио-приложение, которое использует категорию аудиосеанса «Воспроизведение мультимедиа», чтобы разрешить фоновый звук. После инициализации моего аудиосеанса аппаратные кнопки громкости на устройстве iOS управляют громкостью моего аудиосеанса.
Как только воспроизведение звука остановится, я хотел бы вернуть управление звонком телефона аппаратным кнопкам громкости, но моя попытка сделать это путем деактивации аудиосеанса не дает результата.
Вот как я инициализирую и активирую свой аудиосеанс:
AudioSessionInitialize(NULL, NULL, interruptionListenerCallback, self);
AudioSessionAddPropertyListener(kAudioSessionProperty_AudioRouteChange,
audioRouteChangeListenerCallback,
self);
UInt32 sessionCategory = kAudioSessionCategory_MediaPlayback;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory,
sizeof(sessionCategory),
&sessionCategory);
Вот как я пытаюсь деактивировать аудиосеанс и вернуть управление звонком устройства iOS аппаратным регуляторам громкости:
AudioSessionSetActive(false);
Я знаю по крайней мере одно приложение, которое ведет себя подобным образом (приложение Audible.com для iOS). Кто-нибудь знает, что я делаю не так?
OSStatus
возвращаетAudioSessionSetActive(false);
? developer.apple.com/library/ios / # DOCUMENTATION / AudioToolbox / - person A-Live   schedule 18.03.2012