AVAudioPlayerDelegate
Наследование
Не применимый
Оператор импорта
Swift
import AVFoundation
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 2.2 и позже.
Делегат AVAudioPlayer
объект должен принять AVAudioPlayerDelegate
протокол. Все методы в этом протоколе являются дополнительными. Они позволяют делегату реагировать на прерывания звука и ошибки декодирования аудио, и к завершению воспроизведения звука.
-
Вызванный, когда звук закончил играть.
Объявление
Swift
optional func audioPlayerDidFinishPlaying(_
player
: AVAudioPlayer!, successfullyflag
: Bool)Objective C
- (void)audioPlayerDidFinishPlaying:(AVAudioPlayer *)
player
successfully:(BOOL)flag
Параметры
player
Аудиоплеер, закончивший играть.
flag
YES
true
на успешном завершении воспроизведения;NO
false
если воспроизведение остановилось, потому что система не могла декодировать аудиоданные.Обсуждение
Этот метод не вызывают на прерывание звука. Скорее аудиоплеер приостанавливается после прерывания — звук не закончил играть.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 2.2 и позже.
-
Вызванный, когда аудиоплеер встречается с ошибкой декодирования во время воспроизведения.
Объявление
Swift
optional func audioPlayerDecodeErrorDidOccur(_
player
: AVAudioPlayer!, errorerror
: NSError!)Objective C
- (void)audioPlayerDecodeErrorDidOccur:(AVAudioPlayer *)
player
error:(NSError *)error
Параметры
player
Аудиоплеер, встретившийся с ошибкой декодирования.
error
Ошибка декодирования.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 2.2 и позже.
-
Вызванный, когда аудиоплеер прерван, такой как входящим телефонным вызовом.
Объявление
Swift
optional func audioPlayerBeginInterruption(_
player
: AVAudioPlayer!)Objective C
- (void)audioPlayerBeginInterruption:(AVAudioPlayer *)
player
Параметры
player
Прерванный аудиоплеер.
Обсуждение
После прерывания аудио сеанс Вашего приложения деактивирован и паузы аудиоплеера. Вы не можете использовать аудиоплеер снова, пока Вы не получаете уведомление, которое закончило прерывание.
Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 2.2 и позже.
Осуждаемый в iOS 8.0.
См. также
-
Вызванный после Ваших аудио концов прерывания сеанса, с опциями, указывающими состояние аудио сеанса.
Объявление
Swift
optional func audioPlayerEndInterruption(_
player
: AVAudioPlayer!, withOptionsflags
: Int)Objective C
- (void)audioPlayerEndInterruption:(AVAudioPlayer *)
player
withOptions:(NSUInteger)flags
Параметры
player
Аудиоплеер, прерывание которого закончилось.
flags
Опции, указывающие состояние аудио сеанса, когда вызывают этот метод. Опции описаны в AVAudioSessionInterruptionOptions.
Обсуждение
Когда прерывание заканчивается, такой как пользователем, игнорирующим входящий телефонный вызов, аудио сеанс для Вашего приложения автоматически повторно активирован; в той точке можно снова взаимодействовать с аудиоплеером. Для возобновления воспроизведения вызовите
play
метод.Если этот метод делегата получает AVAudioSessionInterruptionOptionShouldResume, постоянный в
options
параметр, аудио сеанс сразу готов использоваться.Оператор импорта
Objective C
@import AVFoundation;
Swift
import AVFoundation
Доступность
Доступный в iOS 6.0 и позже.
Осуждаемый в iOS 8.0.
-
- audioPlayerEndInterruption:
(iOS 6.0)Вызванный после того, как Ваше аудио прерывание сеанса заканчивается.
Объявление
Objective C
- (void)audioPlayerEndInterruption:(AVAudioPlayer *)
player
Параметры
player
Аудиоплеер, прерывание которого закончилось.
Обсуждение
Если Вы реализуете предпочтительное
audioPlayerEndInterruption:withFlags:
метод, это вызовут вместо этого.Когда прерывание заканчивается, такой как пользователем, игнорирующим входящий телефонный вызов, аудио сеанс для Вашего приложения автоматически повторно активирован; в той точке можно снова взаимодействовать с аудиоплеером. Для возобновления воспроизведения вызовите
play
метод.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 2.2 и позже.
Осуждаемый в iOS 6.0.
-
- audioPlayerEndInterruption:withFlags:
(iOS 6.0)Вызванный после Ваших аудио концов прерывания сеанса, с флагами, указывающими состояние аудио сеанса.
Объявление
Objective C
- (void)audioPlayerEndInterruption:(AVAudioPlayer *)
player
withFlags:(NSUInteger)flags
Параметры
player
Аудиоплеер, прерывание которого закончилось.
flags
Флаги, указывающие состояние аудио сеанса, когда вызывают этот метод. Флаги описаны в
Interruption Flags
.Обсуждение
Когда прерывание заканчивается, такой как пользователем, игнорирующим входящий телефонный вызов, аудио сеанс для Вашего приложения автоматически повторно активирован; в той точке можно снова взаимодействовать с аудиоплеером. Для возобновления воспроизведения вызовите
play
метод.Если этот метод делегата получает
AVAudioSessionInterruptionFlags_ShouldResume
постоянный вflags
параметр, аудио сеанс сразу готов использоваться.При реализации этого метода система не вызывает
audioPlayerEndInterruption:
метод.Оператор импорта
Objective C
@import AVFoundation;
Доступность
Доступный в iOS 4.0 и позже.
Осуждаемый в iOS 6.0.
См. также