You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过API/Kit获取macOS媒体播放器信息并控制播放暂停?

macOS 系统级媒体控件对应的API说明
  • 核心依赖框架:Media Player
    对应系统菜单栏媒体控件的全局媒体状态获取与控制功能,主要由MediaPlayer框架提供,核心组件如下:

    1. MPRemoteCommandCenter:这是实现全局播放/暂停控制的核心API。你可以通过它主动触发命令,控制当前活跃的媒体播放器:
      • 触发播放:MPRemoteCommandCenter.shared().playCommand().sendAction(with: nil)
      • 触发暂停:MPRemoteCommandCenter.shared().pauseCommand().sendAction(with: nil)
        它也支持监听系统媒体快捷键的触发事件,实现自定义响应逻辑。
    2. MPNowPlayingInfoCenter:用于获取当前正在播放的媒体状态与信息。通过读取MPNowPlayingInfoCenter.default().nowPlayingInfo字典,可以获取播放状态(MPNowPlayingInfoPropertyPlaybackRate键对应的值,1为播放,0为暂停)、媒体标题、艺术家等数据。
  • 权限与配置要求

    • 项目中需导入MediaPlayer框架。
    • 在macOS 10.14及以上版本,需要在Info.plist中添加NSAppleMusicUsageDescription权限声明,说明应用使用媒体控制的原因;同时要在项目的“Signing & Capabilities”中启用Media Library权限。
  • 补充:特定播放器的精细控制
    如果需要针对Spotify、iTunes这类特定播放器做更细致的操作,可使用Scripting Bridge生成对应应用的桥接文件,但这不属于系统全局媒体控件的API范畴,仅适用于单个应用。

内容的提问来源于stack exchange,提问作者AstraLuma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 14:47:03