AVAudioSession - перехват ошибок setMode и setCategory

Я использую AVAudioSession в приложении, которое выполняет только воспроизведение аудио. Я устанавливаю режим и категорию моей аудиосессии в applicationDidFinishLaunchingWithOptions:,

let audioSession = AVAudioSession.sharedInstance()

do {
   try audioSession.setMode(AVAudioSessionModeDefault)
   try audioSession.setCategory(AVAudioSessionCategoryPlayback)
}
catch {}

Я никогда не устанавливал другой режим или категорию в течение жизни моего приложения, и я активирую свой аудио сеанс, когда пользователь нажимает кнопку воспроизведения. В каком сценарии будет один из этих методов (setMode:error: а также setCategory:error) выкинуть ошибку? Что мне следует ожидать в моем блоке catch?

1 ответ

Гипотетическое (будущее?) Устройство без аудиовыхода может выдать ошибку недопустимой категории аудиосеанса. Или, возможно, произошел сбой аудиодрайвера ОС, к которому нет доступа. Возможно, сообщите пользователю, что устройство не может воспроизводить звук по неизвестной причине.

Другие вопросы по тегам