Repository navigation
分享 Sonar:菜单栏选歌与顶部小播放器的原生实现 #765
can4hou6joeng4
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
大家好,我是 Sonar 的维护者。看到潮流周刊第 221 期推荐 AlgerMusicPlayer,也发现这里有作品展示区,想分享一下自己对 Mac 小播放器的尝试。
Sonar 是 SwiftUI 写的 iOS / macOS 音乐播放器。Mac 端用菜单栏面板选歌,在屏幕顶部放一个可以悬停展开的播放器,展开后显示封面、同步歌词、进度和音量;没有刘海的显示器使用顶部胶囊。两个界面共用播放状态和本地歌单。
网易云和 QQ 的搜索、歌单与歌词通过 JavaScriptCore 音源桥接接入,相关代码适配自 lx-music-mobile,仓库保留来源与许可说明。本地歌单用 SwiftData 保存,支持 JSON 导入导出;iPhone 和 Mac 的资料库独立,通过备份手动迁移。
目前要求 iOS 17+ / macOS 14+,界面主要为中文。Mac 有 双架构实验预览包,采用 ad-hoc 签名、未公证;iPhone 需自行构建与签名。实际播放和音质取决于第三方音源,备份不含音频。Sonar 代码采用 GPL-3.0。
想听听大家在小窗口里看歌词和切歌的体验,尤其是不用打开完整播放器页面时,哪些操作最值得保留。也欢迎交流本地歌单和轻量播控的实现。
源码、实图和构建说明:https://github.com/can4hou6joeng4/Sonar
All reactions