要在静音模式下播放声音,我使用下面的方法.但它是如何不起作用的.

// Works on Swift 3  
do {
    try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
} catch {
    print(error)
}

如何在4.2/iOS 12中工作?

在新版本中,我们需要设置模式和选项.

try AVAudioSession.sharedInstance().setCategory(
    <#T##category:AVAudioSession.Category##AVAudioSession.Category#>,
    mode: <#T##AVAudioSession.Mode#>, 
    options: <#T##AVAudioSession.CategoryOptions#>)`

推荐答案

她的der Töne的 comments 向您展示了新语法,但您还需要在setCategory分钟后激活音频会话:

do {
    try AVAudioSession.sharedInstance().setCategory(.playback, mode: .default)
    try AVAudioSession.sharedInstance().setActive(true)
} catch {
    print(error)
}

Swift相关问答推荐

是否在字符串属性上搜索数组和子数组?

并发访问SWIFT中数组的非重叠子范围

ClosedRange.Swift 中 Int 的索引?

NavigationStack 和 TabView - 工具栏和标题不显示

SwiftUI:按钮的圆形边缘的边框尺寸加倍

从 iPhone 中的安全飞地获取真正的随机数?

Swift 包管理器 Package.resolved 文件末尾的版本是什么意思?

使用 Async-Await 和 Vapor-Fluent 创建 CRUD 函数 - Swift 5.6

使用列表的下一项更新相同的视图

SwiftUI View Builder 参数无法更改状态

令人满意的 var body:协议扩展中的一些视图

异步等待不会在项目中触发,但在 Xcode playground 中工作正常

在 xcode 13 中的构建之间保持可访问性权限

Vapor - 流利的,将对象保存到 PostgreSQL

如何自己快速编写 Hashable 协议

macOS 守护进程应该由Command Line ToolXcode 模板制作吗?

swift中的SequenceType和CollectionType有什么区别?

Swift 2 中的新 @convention(c):我该如何使用它?

如何快速截取 UIView 的屏幕截图?

Objective-C 方法与可选需求方法 Swift 冲突