SoundKit 是一个轻量级且易于使用的 Swift 包,用于在您的 iOS 应用程序中播放声音和触感反馈。
您可以使用 Swift Package Manager 安装 SoundKit。只需将以下行添加到您的 Package.swift
文件中
dependencies: [
.package(url: "https://github.com/lucaswkuipers/SoundKit.git", from: "1.0.0")
]
SoundPlayer
是 SoundKit 中负责播放声音的主要类。以下是如何使用它
通过调用 SoundPlayer.start()
启动声音引擎。建议尽早调用此方法(例如在您的 AppDelegate
或 SceneDelegate
中),以防止播放第一个声音时出现延迟。
通过调用 SoundPlayer.play(_:)
播放声音,并传入一个符合 Sound
协议的对象。
这是一个例子
// Start the sound engine
SoundPlayer.start()
// Play a sound
SomeSound().play()
您还可以通过在您的 Sound 对象中设置相应的属性来自定义每个声音的音量和循环次数。如果您希望声音无限循环,只需将 isLoop 属性设置为 true。
Sound
是一个协议,您可以采纳它来定义您自己的声音。以下是您可以自定义的属性
fileName
: 声音文件的名称(不带扩展名)。fileExtension
: 声音文件的扩展名(例如 "mp3")。haptic
: 一个可选的、符合 Haptic
协议的对象。如果提供,则在每次播放声音时都会播放触感反馈。numberOfVariations
: 声音文件变体的数量(例如,如果您有 "sound.mp3" 和 "sound_1.mp3",则设置为 2)。volume
: 声音的音量(0.0 到 1.0)。isLoop
: 声音是否应该无限循环。这是一个例子
struct MySound: Sound {
var fileName = "my_sound"
var fileExtension = "mp3"
var haptic = MyHaptic()
var numberOfVariations = 3
var volume: Float = 0.5
var isLoop = true
}
Haptic
是一个协议,您可以采纳它来定义您自己的触感反馈。以下是您可以自定义的属性
style
: 触感反馈的样式。intensity
: 触感反馈的强度(0.0 到 1.0)。这是一个例子
struct MyHaptic: Haptic {
var style = .heavy
var intensity: CGFloat = 1.0
}
SoundKit 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。
在 Swift Package Index 上查看: https://swiftpackageindex.cn/lucaswkuipers/SoundKit