在Mac上获取当前播放的歌曲可以使用AppleScript和Swift结合的方式来实现。以下是一种可能的实现方式:
import Cocoa
import AppleScriptObjC
@objc protocol MusicPlayerScripting {
@objc optional func currentTrack() -> NSString
}
class MusicPlayer: NSObject, MusicPlayerScripting {
override init() {
super.init()
NSAppleScript.init(source: "tell application \"Music\" to activate").executeAndReturnError(nil)
}
}
func getCurrentTrack() -> String {
let musicPlayer = MusicPlayer()
let script = NSAppleScript(source: "tell application \"Music\" to get name of current track as string")
let result = script?.executeAndReturnError(nil)
if let trackName = result?.stringValue {
return trackName
} else {
return "No track playing"
}
}
func main() {
let currentTrack = getCurrentTrack()
print("当前播放的歌曲是:\(currentTrack)")
}
main()
这样,当你运行这个Swift文件时,它将获取当前在Mac上播放的歌曲并将其打印出来。
请注意,这只是一种实现方式,具体的实现可能因操作系统版本、音乐播放器版本等而有所不同。此外,还可以使用其他方法来获取当前播放的歌曲,例如使用AppleScript的其他命令或使用第三方库。
领取专属 10元无门槛券
手把手带您无忧上云