returns Void 也会抛出的方法会在编辑器中引起烦人的警告

Method that returns Void which also throws causes annoying warning in editor

我用的是这个方法:

public func setCategory(category: String, withOptions options: AVAudioSessionCategoryOptions) throws

这是一个 AVAudioSession 方法,如您所见,它没有 return 任何东西,但它应该抛出错误。

我喜欢这样:

try? AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .MixWithOthers)

这给了我一个恼人的警告:

Result of 'try?' is unused

我试图将它设置为一个变量并将其放入一个 do-catch 中,但仍然是相同的警告...

我怎样才能摆脱这个警告?

只需将 ? 替换为 ! 即可:

try! AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .MixWithOthers)

你的警告将消失。

更新:

这不会崩溃:

_ = try? AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback, withOptions: .MixWithOthers)