Skip to content

Latest commit

 

History

4 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

律栖 (Incyde)

一个为 Windows 10 Mobile(Lumia 950 等)打造的 UWP 音乐播放器,融合本地音乐库与网易云音乐在线功能。

播放页面 发现页面 搜索页面

功能特性

  • 本地音乐库:基于文件夹扫描本地曲库(FutureAccessList 持久授权,无需每次重新选择文件夹)
  • 元数据与封面:内嵌标签 → 本地封面文件 → .incyde 缓存 → 在线(网易云 / QQ 音乐 / MusicBrainz)多级回退
  • 网易云在线功能:发现页(每日推荐 / 私人 FM)、在线搜索、歌单、评论
  • 歌词:本地 .lrc 优先,支持在线歌词获取
  • 播放:播放队列、随机 / 单曲循环、睡眠定时关闭、SMTC(系统媒体控制)集成
  • 主题:明亮 / 暗黑 / Medieval(羊皮纸风格)等多套主题

截图

播放页 曲库 / 歌单
播放页 歌单
发现 搜索 评论
发现 搜索 评论

技术栈

  • UWP(Universal Windows Platform),MVVM 架构
  • 最低 SDK 10586(Windows 10 Mobile / Lumia 950),目标 SDK 22621
  • 服务层以单例挂载在 App 上:Cache → Metadata → CoverArt → Library → Playback → Player(共享 PlayerViewModel)
  • 仅依赖 Microsoft.NETCore.UniversalWindowsPlatform,无其他 NuGet 包

构建

用 Visual Studio 2017 及以上版本打开 Incyde.sln:

  • 部署到真机(如 Lumia 950)选择 ARM 平台
  • 模拟器 / 桌面调试选择 x86 平台

或使用 MSBuild 命令行构建:

msbuild Incyde\Incyde.csproj /p:Configuration=Debug /p:Platform=ARM

暂无自动化测试与 CI。

已知约束

  • 目标是 Windows 10 Mobile,因此仅能使用 C# 6 语法(无 x:Bind 函数绑定、无元组 / out var),且不能使用 StackPanel.Spacing 等较新 API
  • MediaPlayer 相关事件在后台线程触发,UI 更新需经由调度器(ViewModelBase.NotifyOnUI)
  • 曲库通过一层文件夹扫描(根目录 → 子文件夹分组),不做更深层级递归

许可证

MIT License

About

一个为Windows 10 Mobile开发的UWP网易云和本地音乐播放器

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages