在 iOS 13 播放系统声音

Play system sound in iOS 13

我以前可以使用下面的代码播放系统音频文件。这在 iOS 13 中不适用于新旧应用程序。

import AudioToolbox
import AVFoundation

...

    func tock() {
        do {
            try AVAudioSession.sharedInstance().setCategory(AVAudioSession.Category(rawValue: convertFromAVAudioSessionCategory(AVAudioSession.Category.ambient)))

            var myAlertSound: SystemSoundID = 0
            let url: URL = URL(string: "/System/Library/Audio/UISounds/Tock.caf")!
            AudioServicesCreateSystemSoundID( (url) as CFURL, &myAlertSound)
            AudioServicesPlaySystemSound(myAlertSound)
        } catch {
            print("Error in audio feedback")
        }
    }

    // Helper function inserted by Swift 4.2 migrator.
    private func convertFromAVAudioSessionCategory(_ input: AVAudioSession.Category) -> String {
        return input.rawValue
    }

我也没有看到 "Error in audio feedback" 印刷品。

有没有办法在 iOS13 中播放简单的声音?

这有效:

AudioServicesPlaySystemSound(SystemSoundID(1104))

此处提供所有系统声音的列表:https://github.com/TUNER88/iOSSystemSoundsLibrary