在iOS应用程序中使用现有系统声音[swift|

zd287kbt  于 2023-01-19  发布在  Swift
关注(0)|答案(3)|浏览(194)

是否可以在我自己的应用程序中使用现有的Apple系统声音?我想用Swift编写一个示例应用程序,它执行以下步骤:
1.读取/获取设备上所有可用systemSounds的列表(我认为它们位于/System/Library/Audio/UISounds/
1.在屏幕上显示列表
1.如果触摸列表项,则播放这些声音
所以基本上是一样的,就像你在iPhone上选择一个新的铃声一样。
我想有些应用程序正在使用这种声音,或者他们复制/购买了它?

62lalag4

62lalag41#

您可以使用以下Swift 5代码播放系统声音:

// import this
import AVFoundation

// create a sound ID, in this case its the tweet sound.
let systemSoundID: SystemSoundID = 1016

// to play sound
AudioServicesPlaySystemSound(systemSoundID)

我能找到的最新的声音列表是here
文件参考
它们听起来都是这样的:https://www.youtube.com/watch?v=TjmkmIsUEbA

72qzrwbm

72qzrwbm2#

雨燕4

import AVFoundation

AudioServicesPlayAlertSound(SystemSoundID(1322))
nvbavucw

nvbavucw3#

这里有一个测试声音的快速方法。

import AVFoundation

func displaySoundsAlert() {
    let alert = UIAlertController(title: "Play Sound", message: nil, preferredStyle: UIAlertController.Style.alert)
    for i in 1000...1010 {
        alert.addAction(UIAlertAction(title: "\(i)", style: .default, handler: {_ in
            AudioServicesPlayAlertSound(UInt32(i))
            self.displaySoundsAlert()
        }))
    }
    alert.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil))
    self.present(alert, animated: true, completion: nil)
}

相关问题