swift - AVAudioSession - 捕获 setMode 和 setCategory 错误

标签 swift error-handling try-catch avaudiosession audiosession

我在一个只执行音频播放的应用程序中使用 AVAudioSession。我正在 applicationDidFinishLaunchingWithOptions: 中设置 audioSession 的模式和类别。

let audioSession = AVAudioSession.sharedInstance()

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

在我的应用程序的生命周期中,我从未设置过不同的模式或类别,并且当用户点击播放按钮时我会激活我的 Audio Session 。在什么情况下这些方法(setMode:error:setCategory:error)会抛出错误?我应该在我的 catch block 中处理什么?

最佳答案

没有音频输出的假设( future ?)设备可能会引发无效 Audio Session 类别错误。或者可能操作系统音频驱动程序已崩溃且无法访问。也许会通知用户设备由于某些未知原因无法播放音频。

关于swift - AVAudioSession - 捕获 setMode 和 setCategory 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38253731/

相关文章:

swift - firebase 数据库连接中的错误处理

python - IndexError : list index out of range - throwing error in Python?

java - try catch 错误

Flutter:使用 try catch 保留错误的 Stacktrace

java - 在静态主方法中的 While 内尝试/捕获

swift - 类似于 Finder 应用程序 NSOutlineView Cocoa Swift 的拖放

ios - Swift 正则表达式函数更新

ios - 如何从 Swift 中的选择器调用私有(private)类函数?

java - 删除目录Java中的文件类型

python - Tweepy,UnicodeEncodeError USC-2