核心用法
Apple Music 集成技能提供两条技术路径:AppleScript(macOS 原生) 与 MusicKit API(跨平台),分别适用于不同场景。
AppleScript 方案无需任何配置,直接在 macOS 终端通过 osascript 调用系统 Music 应用,支持完整的播放控制(播放/暂停/跳过/音量)、曲库查询、歌单管理及 AirPlay 设备切换。典型命令如 tell application "Music" to playpause 即可实现播放切换。该方案可读写曲目元数据(评分、喜爱状态、流派年份等),并支持复杂曲库查询(按艺术家、专辑、年份、播放次数筛选)。
MusicKit API 方案需 Apple Developer 账号($99/年),通过 JWT 开发者令牌与用户音乐令牌访问。优势在于跨平台与目录搜索能力,可检索 Apple Music 全球曲库、获取推荐与播放历史。但存在关键限制:API 无法控制播放(无播放/暂停/跳过接口),且只能修改通过 API 创建的歌单。
关键约束:Library-First 工作流
无论采用何种方案,目录歌曲(Catalog ID)无法直接加入歌单。必须先添加至用户曲库获取 Library ID,方可入 playlist。此限制源于 Apple 的权限设计——歌单系统仅识别曲库内曲目标识。MusicKit API 用户需执行「搜索目录→加入曲库→转换 ID→添加至歌单」四步流程。
显著优点
- 零门槛本地控制:AppleScript 无需注册、令牌或网络请求,macOS 用户开箱即用
- 完整播放控制:AppleScript 独占播放、暂停、切歌、进度拖拽、音量调节、随机/重复模式切换
- 深度曲库管理:支持元数据编辑(评分、喜爱、流派)、智能筛选查询、批量歌单操作
- AirPlay 原生支持:可直接枚举并切换至 HomePod、Apple TV 等播放设备
- 跨平台目录能力:MusicKit API 提供全球曲库搜索、个性化推荐、播放历史分析
潜在缺点与局限性
- 平台割裂:AppleScript 仅限 macOS;MusicKit API 虽跨平台但缺失核心播放控制
- 歌单编辑受限:API 仅能修改其自身创建的歌单,用户手动创建的歌单无法通过 API 编辑
- 令牌维护成本:MusicKit 开发者令牌 180 天强制过期,需自动化续期机制
- 曲库准入门槛:非订阅用户无法完整使用 MusicKit 功能;曲库为空时需先「收藏」才能建歌单
- 字符串转义风险:AppleScript 动态构建时引号与反斜杠需严格转义,否则导致执行失败
- 无 Windows/Linux 原生方案:非 macOS 用户仅能依赖受限的 MusicKit API
适合人群
- macOS 重度用户:追求本地音乐工作流自动化,需快速控制播放与整理曲库
- Apple Music 订阅者:已建立曲库,需批量管理歌单、导出播放数据或同步评分
- 开发者/极客:愿投入 Apple Developer 账号,构建跨平台音乐数据分析工具(如年度听歌报告)
- 智能家居整合者:需通过脚本将 Apple Music 接入 Home Assistant 等自动化系统(macOS 网关)
常规风险
- 账号封禁风险:频繁 API 调用可能触发 Apple 速率限制;滥用自动化工具违反服务条款
- 数据丢失:AppleScript 直接操作歌单删除不可逆;批量修改元数据前建议备份
- 隐私泄露:MusicKit 用户令牌包含个人曲库信息,泄露可导致听歌历史、收藏偏好外泄
- 订阅绑定:曲库内容随订阅失效而不可访问,本地「下载」非 DRM 解除,仅缓存加密文件