AVAudioSessionDelegate
Наследование
Не применимый
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 3.0 и позже.
Использование этого протокола осуждается в iOS 6 и позже. Вместо этого необходимо использовать уведомления, объявленные в Ссылке класса AVAudioSession.
Делегат AVAudioSession
объект должен принять AVAudioSessionDelegate
протокол. Методы в этом протоколе являются дополнительными. Они позволяют делегату реагировать на следующие виды изменений в состоянии:
Изменения в доступности аудиовхода
Аудио прерывание сеанса или конец аудио прерывания сеанса
AVAudioSession
делегат может реагировать на прерывания на аудио сеансовом уровне. Можно использовать этот интерфейс вместе с любой технологией аудио iOS. Например, Ваш AVAudioSession
делегат может обработать прерывания для воспроизведение аудиоустройства и OpenAL.
При использовании платформы Основы AV для записи или воспроизведения, можно также реагировать на прерывания в отдельном устройстве записи или уровне проигрывателя. Чтобы сделать это, создайте делегатов магнитофона или аудиоплеера, использующих протоколы, описанные в Ссылке на протокол Ссылки на протокол и AVAudioPlayerDelegate AVAudioRecorderDelegate.
-
Вызванный после того, как Ваш аудио сеанс прерван.
Объявление
Swift
optional func beginInterruption()
Objective C
- (void)beginInterruption
Обсуждение
К тому времени, когда это прерывание наступает, Ваше аудио уже остановилось. Если пользователь принимает решение взять входящий телефонный вызов, Ваше приложение может быть приостановлено или завершено после прерывания — например. Используйте этот метод, чтобы скорректировать пользовательский интерфейс и сохранить состояние приложения, по мере необходимости.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Вызванный после того, как Ваше аудио прерывание сеанса заканчивается.
Объявление
Swift
optional func endInterruption()
Objective C
- (void)endInterruption
Обсуждение
endInterruptionWithFlags:
метод предоставляет Вам больше информации относительно конца прерывания, чем этот метод. Apple рекомендует использоватьendInterruptionWithFlags:
вместо этого метода.Если Вы реализуете
endInterruptionWithFlags:
когда прерывание заканчивается, метод, тот метод вызывают вместо этого.Чтобы продолжить использовать аудио после, прерывание заканчивается, необходимо гарантировать, что аудио сеанс активен.
AVAudioPlayer
иAVAudioRecorder
когда прерывание заканчивается, экземпляры повторно активируют Ваш аудио сеанс автоматически. При использовании другой аудио технологии, такой как OpenAL, аудиоустройства или аудио-очереди, необходимо повторно активировать аудио сеанс сами, прежде чем можно будет снова использовать аудио.Можно также использовать этот метод для обновления пользовательского интерфейса и состояния приложения по мере необходимости.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.
-
Вызванный после Ваших аудио концов прерывания сеанса, с флагами, указывающими состояние аудио сеанса.
Объявление
Swift
optional func endInterruptionWithFlags(_
flags
: Int)Objective C
- (void)endInterruptionWithFlags:(NSUInteger)
flags
Параметры
flags
Флаги, указывающие состояние аудио сеанса, когда вызывают этот метод. Флаги описаны в
Interruption Flags
.Обсуждение
Чтобы продолжить использовать аудио после, прерывание заканчивается, необходимо гарантировать, что аудио сеанс активен.
AVAudioPlayer
иAVAudioRecorder
когда прерывание заканчивается, экземпляры повторно активируют Ваш аудио сеанс автоматически. При использовании другой аудио технологии, такой как OpenAL, аудиоустройства или аудио-очереди, необходимо повторно активировать аудио сеанс сами, прежде чем можно будет снова использовать аудио.Можно также использовать этот метод для обновления пользовательского интерфейса и состояния приложения по мере необходимости.
Если этот метод делегата получает
AVAudioSessionInterruptionFlags_ShouldResume
постоянный вflags
параметр, аудио сеанс сразу готов использоваться.При реализации этого метода его вызывают вместо
endInterruption
метод, когда заканчивается прерывание.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 4.0 и позже.
См. также
-
Вызванный после того, как доступность аудиовхода изменяется на устройстве.
Объявление
Swift
optional func inputIsAvailableChanged(_
isInputAvailable
: Bool)Objective C
- (void)inputIsAvailableChanged:(BOOL)
isInputAvailable
Параметры
isInputAvailable
YES
true
если аудиовход теперь доступен, илиNO
false
если это не.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 3.0 и позже.