[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-7463":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":27,"readmeContent":28,"aiSummary":29,"trendingCount":16,"starSnapshotCount":16,"syncStatus":30,"lastSyncTime":31,"discoverSource":32},7463,"BiliPai","jay3-yy\u002FBiliPai","jay3-yy","原生、纯净、可扩展 —— 重新定义你的 B 站体验","https:\u002F\u002Ft.me\u002FBiliPai",null,"Kotlin",3147,114,12,340,0,9,102,530,50,28.18,"GNU General Public License v3.0",false,"main",true,[],"2026-06-12 02:01:39","# BiliPai \u003Cimg src=\"docs\u002Fimages\u002F233娘.jpeg\" height=\"80\" align=\"center\">\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"README_EN.md\">English\u003C\u002Fa> | \u003Ca href=\"README.md\">简体中文\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cstrong>原生、纯净、可扩展 —— 重新定义你的 B 站体验\u003C\u002Fstrong>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Csub>最后更新：2026-05-06 · 文档已同步至 v8.0.6（以 \u003Ca href=\"CHANGELOG.md\">CHANGELOG\u003C\u002Fa> 与源码为准）\u003C\u002Fsub>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FVersion-8.0.6-fb7299?style=flat-square\" alt=\"Version\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fjay3-yy\u002FBiliPai?style=flat-square&color=yellow\" alt=\"Stars\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fjay3-yy\u002FBiliPai?style=flat-square&color=green\" alt=\"Forks\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flast-commit\u002Fjay3-yy\u002FBiliPai?style=flat-square&color=purple\" alt=\"Last Commit\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPlatform-Android%208.0%2B%20(API%2026)-brightgreen?style=flat-square\" alt=\"Platform\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FAPK-Varies-orange?style=flat-square\" alt=\"Size\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-GPL--3.0-blue?style=flat-square\" alt=\"License\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPlugins-6%20Built--in-blueviolet?style=flat-square\" alt=\"Plugins\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Ca href=\"https:\u002F\u002Ft.me\u002FBiliPaii\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTelegram-交流群-2CA5E0?style=flat-square&logo=telegram\" alt=\"Telegram Group\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Ft.me\u002FBiliPai\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FTelegram-频道-2CA5E0?style=flat-square&logo=telegram\" alt=\"Telegram Channel\">\u003C\u002Fa>\n  \u003Ca href=\"https:\u002F\u002Fx.com\u002FYangY_0x00\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FX-Follow-000000?style=flat-square&logo=x\" alt=\"X\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n## 🚀 快速导航\n\n| 类别 | 入口 |\n| --- | --- |\n| 开始使用 | [下载 Releases](https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Freleases) · [更新日志](CHANGELOG.md) |\n| 文档导航 | [Wiki 首页](docs\u002Fwiki\u002FREADME.md) · [AI \u002F LLM 入口](llms.txt) · [AI 导航指南](docs\u002Fwiki\u002FAI.md) |\n| 开发参考 | [JSON \u002F 外部插件开发](docs\u002FPLUGIN_DEVELOPMENT.md) · [原生插件开发](docs\u002FNATIVE_PLUGIN_DEVELOPMENT.md) · [Plugin SDK 中文文档](plugins\u002Fsdk\u002FREADME.md) |\n| 插件生态 | [社区插件目录](plugins\u002Fcommunity\u002FREADME.md) · [插件示例](plugins\u002Fsamples\u002F) |\n\n> [!IMPORTANT]\n> 应用内默认设置为通用场景，可能不适合所有用户。建议进入 **设置** 按个人习惯手动调整（如外观、动画、播放设置等）。\n\n> [!CAUTION]\n> `README`、`AI.txt`、`llm.txt`、`llms.txt` 与 Wiki 会定期维护，但主线迭代较快，仍可能存在时效性偏差；内容仅供参考，具体行为请以最新源码、`CHANGELOG.md` 与实际构建结果为准。\n\n## 📸 应用预览\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_preview_1.png\" alt=\"预览图 1\" height=\"500\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_preview_2.png\" alt=\"预览图 2\" height=\"500\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_preview_3.png\" alt=\"预览图 3\" height=\"500\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_preview_4.png\" alt=\"预览图 4\" height=\"500\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_preview_5.png\" alt=\"预览图 5\" height=\"500\">\n\u003C\u002Fp>\n\n## ✨ 功能亮点\n\n### 🎬 视频播放\n\n| 功能 | 描述 |\n|-----|-----|\n| **高清画质** | 支持 4K \u002F 1080P60 \u002F HDR \u002F Dolby Vision (需登录\u002F大会员) |\n| **DASH 流媒体** | 自适应码率选择，无缝切换画质，流畅播放体验 |\n| **弹幕系统** | 透明度、字体大小、滚动速度可调，支持弹幕密度过滤 |\n| **手势控制** | 左侧上下滑动调节亮度，右侧调节音量，左右滑动快进\u002F快退 |\n| **倍速播放** | 0.5x \u002F 0.75x \u002F 1.0x \u002F 1.25x \u002F 1.5x \u002F 2.0x，长按倍速支持上滑锁定 |\n| **画中画** | 悬浮小窗播放，多任务无缝切换 |\n| **听视频模式** | 🆕 专属音频播放界面，支持沉浸式\u002F黑胶唱片模式、歌词、播放列表与定时关闭 |\n| **AI 总结** | 🆕 智能生成视频内容摘要，快速获取核心信息 |\n| **原地播放** | 长按视频封面直接预览播放，点击即可全屏，无缝衔接 |\n| **后台播放** | 锁屏\u002F切后台继续听，支持独立开关后台播放与音频焦点，通知栏与系统媒体中心前后切歌更稳定 |\n| **播放顺序** | 支持播完暂停 \u002F 顺序播放 \u002F 单个循环 \u002F 列表循环 \u002F 自动连播，横竖屏可快捷切换 |\n| **播放完成体验** | 关闭“自动播放下一个”后，播完不再弹强干扰操作弹窗 |\n| **竖屏交互修复** | 修复竖屏连刷下一条后点赞\u002F收藏失效，收藏改为直接打开收藏夹面板 |\n| **Seek 预览优化** | 预览图更新按帧边界量化，拖动与点击跳转时重绘负担更低 |\n| **评论体验** | 支持默认排序偏好（最热\u002F最新），并修复特定排序下 UP 主\u002F置顶评论缺失问题 |\n| **评论复制增强** | 长按进入可选择复制面板，支持拖拽选择评论片段（含表情\u002F富文本场景） |\n| **横屏信息栏** | 全屏顶部新增时间显示，横屏交互信息更完整 |\n| **播放记忆** | 自动记录观看进度，续播提示支持开关与同目标仅提醒一次 |\n| **高画质扫码登录** | 支持扫码登录，解锁大会员专属高画质 |\n| **插件系统** | 内置空降助手、去广告、弹幕增强、夜间护眼、今日推荐单、CDN 属地优选等插件，可扩展架构 |\n\n### 🔌 插件系统\n\n| 插件 | 描述 |\n|-----|-----|\n| **空降助手** | 基于 BilibiliSponsorBlock 数据库，自动跳过广告\u002F恰饭片段 |\n| **去广告插件** | 智能过滤推荐流中的商业推广内容 |\n| **弹幕增强** | 支持关键词 + 用户 UID\u002Fhash 过滤与高亮，规则变更支持播放内热更新 |\n| **夜间护眼** | 定时护眼、三档预设可 DIY、实时预览、暖色滤镜、关怀提醒（支持稍后提醒） |\n| **🆕 今日推荐单** | 本地分析观看历史与反馈，生成“今晚轻松看 \u002F 深度学习看”队列，支持收起\u002F展开、单独刷新、UP 主榜与推荐解释 |\n| **🆕 CDN 属地优选** | 默认关闭；按 IP 属地把匹配地区 CDN 放进普通视频线路候选，并保留原始播放 URL 作为故障恢复 |\n| **插件中心** | 统一管理所有插件，支持独立配置 |\n| **🆕 外部插件** | 支持通过 URL 动态加载 JSON 规则插件 |\n\n#### 当前插件生态与开发者适配状态\n\n> [!NOTE]\n> 插件能力已进入可用阶段，但生态仍处于早期：内置插件随主应用稳定分发，外部规则插件可导入使用，外部 Kotlin 插件包目前以预览、授权和 SDK 适配为主，尚不执行外部 Dex。\n\n| 形态 | 当前情况 | 开发者入口 |\n| --- | --- | --- |\n| **内置插件** | 已内置 6 个：空降助手、去广告、弹幕增强、夜间护眼、今日推荐单、CDN 属地优选；由主应用一同编译和发布 | 参考 `app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\u002Ffeature\u002Fplugin\u002F` 与插件中心实现 |\n| **JSON \u002F `.bp` 规则插件** | 支持通过 URL 导入，适合推荐流过滤、弹幕过滤\u002F高亮；`plugins\u002Fcommunity\u002F` 当前只有 1 个演示插件，兼容性样本仍有限 | [JSON 插件开发](docs\u002FPLUGIN_DEVELOPMENT.md) · [社区插件目录](plugins\u002Fcommunity\u002FREADME.md) |\n| **外部 `.bpplugin` Kotlin 包** | SDK 与包格式已提供，可解析 manifest、SHA-256、签名状态和能力申请，并保存授权记录；当前宿主不会执行外部 Dex | [Plugin SDK 中文文档](plugins\u002Fsdk\u002FREADME.md) · [Today Watch Remix 示例](plugins\u002Fsamples\u002Ftoday-watch-remix\u002F) |\n| **源码级原生 Kotlin 插件** | 适合复杂播放器、推荐、弹幕或自定义 UI 能力；需要修改源码并重新编译 APK，接口仍以当前源码为准 | [原生插件开发](docs\u002FNATIVE_PLUGIN_DEVELOPMENT.md) |\n\n- 第三方插件接入前请审阅规则或包清单，尤其是 `NETWORK`、`LOCAL_HISTORY_READ`、`LOCAL_FEEDBACK_READ`、`PLAYER_CONTROL` 等敏感能力。\n- 插件 API、能力授权和导入体验还会继续迭代，开发者适配时应固定目标版本，并以 `CHANGELOG.md` 与当前源码为最终依据。\n\n#### 已实现细节（补充）\n\n- `今日推荐单`：\n  - 支持双模式切换（今晚轻松看 \u002F 深度学习看）\n  - 支持 UP 主榜、视频队列、推荐理由标签\n  - 推荐队列展示 UP 主头像与昵称，优化观感\n  - 联动护眼状态：夜间自动偏向短时长、低刺激内容\n  - 支持本地负反馈学习（不感兴趣视频\u002FUP\u002F关键词）\n  - 支持冷启动首屏曝光策略，避免“已生成但看不到”\n  - 插件内可一键清空本地画像与反馈，重新学习\n- `夜间护眼`：\n  - 三档预设（轻柔\u002F平衡\u002F专注）并支持用户 DIY\n  - 实时预览亮度与暖色滤镜强度\n  - 定时护眼 + 使用时长关怀提醒 + 稍后提醒\n  - 关怀文案与提醒策略支持人性化优化\n- `画质切换`：\n  - 画质列表按接口返回展示，再用真实 DASH 轨道决定哪些档位可切换\n  - 缓存切换改为目标画质精确匹配，缺失时回退 API\n  - 切换提示文案更明确（目标不可用时清晰反馈）\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>📌 今日推荐单算法与今日推荐看的算法优化（默认折叠）\u003C\u002Fb>\u003C\u002Fsummary>\n\n#### 今日推荐单算法（通俗版）\n\n- **先看你最近看了谁**：统计历史记录里你常看的 UP 主，并结合播放进度和“最近看过”的权重。\n- **再给候选视频打分**：每条视频会综合以下信号：\n  - 热度（播放量）\n  - 与你偏好 UP 主的匹配度\n  - 新鲜度（发布时间）\n  - 模式偏好（`今晚轻松看` 更偏短、轻松；`深度学习看` 更偏知识、时长适中）\n  - 夜间护眼状态（夜间会降低高刺激、超长视频权重）\n  - 负反馈（不感兴趣的视频\u002FUP\u002F关键词会被明显降权）\n- **最后做“去同质化”排序**：不是只按分数从高到低排，而是避免连续刷到同一个 UP 主，让列表更耐看。\n\n一句话总结：`今日推荐单` 是一个完全本地、可解释的加权排序器，会根据你的观看行为持续微调结果。\n\n#### 今日推荐单界面示例\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fimages\u002Fscreenshot_today_watch_plan.png\" alt=\"今日推荐单截图\" height=\"560\">\n\u003C\u002Fp>\n\n#### 今日推荐单算法原理（详细版）\n\n> 对应实现：`app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\u002Ffeature\u002Fhome\u002FTodayWatchPolicy.kt`  \n> 画像与反馈存储：`app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\u002Fcore\u002Fstore\u002FTodayWatchProfileStore.kt`、`app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\u002Fcore\u002Fstore\u002FTodayWatchFeedbackStore.kt`\n\n1. 输入数据\n\n- 历史样本：`historyVideos`（本地历史记录）\n- 候选集合：`candidateVideos`（首页推荐流候选）\n- 模式：`RELAX`（今晚轻松看）或 `LEARN`（深度学习看）\n- 护眼信号：`eyeCareNightActive`（夜间护眼是否激活）\n- 画像信号：`creatorSignals`（本地累计的 UP 主偏好）\n- 负反馈信号：`penaltySignals`（不感兴趣视频\u002FUP\u002F关键词）\n\n2. 历史预处理与 UP 主亲和度构建\n\n- 仅保留有效历史项：`bvid` 非空且 `owner.mid > 0`\n- 按 `view_at` 倒序，统计每位 UP 的聚合分：\n  - `creator_score += 1.0 + completion * 1.2 + recencyBonus(view_at)`\n  - `completion`：\n    - `progress \u003C 0` -> `0.35`\n    - `duration \u003C= 0` -> `clamp(progress \u002F 600, 0..1)`\n    - 其他 -> `clamp(progress \u002F duration, 0..1)`\n  - `recencyBonus(view_at)`：\n    - `\u003C=1天:1.0`，`\u003C=3天:0.8`，`\u003C=7天:0.6`，`\u003C=30天:0.35`，其余 `0.15`\n\n3. 跨会话画像融合（Creator Signal）\n\n- 从本地画像仓读取每位 UP 的长期偏好分：\n  - `engagementScore = ln(totalWatchSec + 1) * 0.92 + ln(engagementEvents + 1) * 0.66`\n  - `recencyScore`：\n    - `\u003C=1天:1.15`，`\u003C=3天:0.85`，`\u003C=7天:0.55`，`\u003C=30天:0.2`，其余 `-0.1`\n  - `signal.score = engagementScore + recencyScore`\n- 合并到当前会话亲和度：`creatorAffinity[mid] += signal.score`\n\n4. 候选视频清洗\n\n- 过滤无效候选：`bvid\u002Ftitle` 非空\n- 按 `bvid` 去重\n- 标记是否已看过：`alreadySeen = bvid in historySet`\n\n5. 单条候选打分（核心公式）\n\n- 总分：\n  - `score = base + creator + freshness + seenPenalty + mode + night + feedback`\n- 基础分：\n  - `base = ln(view + 1) * 0.45`\n  - `creator = ln(creatorAffinity + 1) * 2.1`\n  - `freshness(pubdate)`：`\u003C=1天:0.8`，`\u003C=3天:0.55`，`\u003C=7天:0.3`，`\u003C=30天:0.1`，其余 `-0.05`\n  - `seenPenalty`：已看过则 `-2.6`\n- 强度信号（弹幕密度近似刺激度）：\n  - `intensity = danmaku \u002F max(view,1)`\n  - `calmScore`：`\u003C0.004:1.0`，`\u003C0.01:0.3`，其余 `-1.0`\n- 模式分：\n  - `RELAX`：\n    - `durationRelaxScore`：`\u003C2:-0.2`，`\u003C=12:1.4`，`\u003C=20:0.6`，`\u003C=35:-0.1`，其余 `-0.9`\n    - `keywordBonus(title, RELAX_KEYWORDS, LEARN_KEYWORDS)`\n    - `+ calmScore`\n  - `LEARN`：\n    - `durationLearnScore`：`\u003C5:-0.6`，`\u003C=12:0.5`，`\u003C=35:1.5`，`\u003C=55:0.8`，其余 `-0.2`\n    - `keywordBonus(title, LEARN_KEYWORDS, RELAX_KEYWORDS)`\n    - 时长补偿：`duration>=10分钟 ? +0.6 : -0.2`\n- 夜间护眼调权（仅护眼激活时）：\n  - `durationPenalty`：`\u003C=15:+1.2`，`\u003C=25:+0.2`，`>25` 按时长递减到最多 `-3.0`\n  - `intensityPenalty`：`\u003C0.006:+0.6`，`\u003C0.012:0.0`，其余 `-1.1`\n- 负反馈惩罚：\n  - 命中不感兴趣视频：`-3.2`\n  - 命中不感兴趣 UP：`-2.4`\n  - 不感兴趣关键词：每个 `-0.7`，最低封顶 `-2.8`\n\n6. 关键词加权与限幅\n\n- `keywordBonus = positiveCount * 0.55 - negativeCount * 0.35`\n- 限幅区间：`[-1.2, 1.8]`（防止关键词信号压过核心行为信号）\n\n7. UP 主榜与多样化队列\n\n- UP 主榜：按聚合 `creator_score` 取 TopN（默认 5，可配置）\n- 视频队列不是直接按总分排序，而是做“多样化贪心”：\n  - `adjusted = candidateScore - sameCreatorPenalty - repeatPenalty + noveltyBonus`\n  - 同 UP 连续惩罚：`1.15`\n  - 重复出现惩罚：`usedCount * 0.75`\n  - 首次出现奖励：`+0.35`\n- 作用：避免连续刷到同一个 UP，提高耐看度和探索感\n\n8. 可解释输出\n\n- 每条推荐会附带解释标签（如：`学习向 · 中时长 · 夜间友好 · 偏好UP`）\n- `偏好UP` 触发阈值：`creatorAffinity > 0.8`\n\n9. 冷启动可见性策略\n\n- 推荐单在冷启动窗口内采用一次性曝光策略：\n  - 若插件已启用、推荐单已生成、当前在推荐页且列表不在顶部，则自动回顶一次\n  - 避免“推荐单已生成但首屏看不到”\n\n10. 隐私与可控性\n\n- 算法完全在本地运行，不上传历史记录用于个性化训练\n- 支持一键清空本地画像与反馈，恢复冷启动推荐状态\n\n#### 今日推荐看的算法优化建议（2026-04-30）\n\n> 这部分是当前 README 推荐优先阅读的算法优化方向，面向后续迭代和代码审查；不是已全部落地的实现承诺。\n\n| 优先级 | 优化点 | 建议做法 |\n| --- | --- | --- |\n| P0 | 候选池分层召回 | 将首页候选拆为偏好 UP、近期高质量、长尾探索、负反馈避让四类，再进入统一打分，避免单一热门信号主导 |\n| P0 | 反馈半衰期 | 对“不感兴趣”关键词\u002FUP 增加时间衰减，短期强降权、长期逐步恢复，减少误点导致的长期偏差 |\n| P1 | 探索\u002F利用配比 | 队列中保留少量探索位，例如 70% 偏好匹配 + 20% 新鲜内容 + 10% 冷门高质量，提升发现感 |\n| P1 | 时段与场景特征 | 将夜间护眼、工作日\u002F周末、最近会话时长纳入模式权重，短会话更偏短内容，长会话允许学习向长视频 |\n| P1 | 多样化约束升级 | 在同 UP 惩罚外加入分区、关键词簇、时长段多样性，避免列表只是在同一主题内换 UP 主 |\n| P2 | 可解释性校准 | 将解释标签和真实加分项绑定，避免“看起来合理但不是主要原因”的解释误导用户 |\n| P2 | 离线评估基线 | 为 `TodayWatchPolicy` 增加固定样本回归集，跟踪命中偏好、重复率、负反馈命中率和队列时长分布 |\n\n建议下一步优先看 `app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\u002Ffeature\u002Fhome\u002FTodayWatchPolicy.kt` 的候选清洗、单条打分和多样化贪心排序，再对照 `TodayWatchProfileStore` \u002F `TodayWatchFeedbackStore` 检查画像与负反馈信号是否需要衰减。\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>\u003Cb>📖 JSON 规则插件快速入门（点击展开）\u003C\u002Fb>\u003C\u002Fsummary>\n\n#### 什么是 JSON 规则插件？\n\nJSON 规则插件是一种**无需编程**的轻量级插件格式，只需编写简单的 JSON 文件即可实现内容过滤功能。\n\n#### 插件结构\n\n```json\n{\n    \"id\": \"my_plugin\",\n    \"name\": \"我的插件\",\n    \"description\": \"插件描述\",\n    \"version\": \"1.0.0\",\n    \"author\": \"你的名字\",\n    \"type\": \"feed\",\n    \"rules\": [\n        {\n            \"field\": \"title\",\n            \"op\": \"contains\",\n            \"value\": \"广告\",\n            \"action\": \"hide\"\n        }\n    ]\n}\n```\n\n#### 支持的字段\n\n| 类型 | 字段 | 说明 |\n|------|------|------|\n| **Feed** | `title` | 视频标题 |\n| **Feed** | `duration` | 视频时长（秒） |\n| **Feed** | `owner.mid` | UP 主 UID |\n| **Feed** | `owner.name` | UP 主名称 |\n| **Feed** | `stat.view` | 播放量 |\n| **Danmaku** | `content` | 弹幕内容 |\n\n#### 操作符\n\n| 操作符 | 说明 | 示例 |\n|--------|------|------|\n| `contains` | 包含 | `\"value\": \"广告\"` |\n| `regex` | 正则匹配 | `\"value\": \"震惊.*必看\"` |\n| `lt` \u002F `gt` | 小于 \u002F 大于 | `\"value\": 60` |\n| `eq` \u002F `ne` | 等于 \u002F 不等于 | `\"value\": 123456` |\n| `startsWith` | 以...开头 | `\"value\": \"【\"` |\n\n#### 示例：短视频过滤器\n\n```json\n{\n    \"id\": \"short_video_filter\",\n    \"name\": \"短视频过滤\",\n    \"type\": \"feed\",\n    \"rules\": [\n        { \"field\": \"duration\", \"op\": \"lt\", \"value\": 60, \"action\": \"hide\" }\n    ]\n}\n```\n\n#### 安装方式\n\n1. 将 JSON 文件上传到公开可访问的 URL（如 GitHub Gist）\n2. 在 BiliPai 中进入 **设置 → 插件中心 → 导入外部插件**\n3. 粘贴链接并安装\n\n\u003C\u002Fdetails>\n\n> 📚 **完整文档**: [插件开发指南](docs\u002FPLUGIN_DEVELOPMENT.md)\n>\n> 🧩 **示例插件**: [plugins\u002Fsamples\u002F](plugins\u002Fsamples\u002F)\n\n### 📺 番剧追番\n\n| 功能 | 描述 |\n|-----|-----|\n| **番剧首页** | 热门推荐、新番时间表、分区浏览 |\n| **选集面板** | 官方风格底部弹出面板，支持季度\u002F版本切换 |\n| **横屏顶部操作** | 横屏\u002F全屏场景补齐点赞、投币、分享入口，交互与普通视频播放器更一致 |\n| **追番管理** | 追番列表、观看进度自动同步 |\n| **弹幕支持** | 番剧同样支持完整弹幕功能 |\n\n### 📡 直播功能\n\n| 功能 | 描述 |\n|-----|-----|\n| **直播列表** | 热门直播、分区浏览、关注直播 |\n| **高清直播流** | HLS 自适应码率播放 |\n| **直播弹幕** | 实时弹幕显示 |\n| **一键跳转** | 动态卡片直接进入直播间 |\n\n### 📱 动态页面\n\n| 功能 | 描述 |\n|-----|-----|\n| **动态流** | 关注 UP 主的视频\u002F图文\u002F转发动态 |\n| **分类筛选** | 全部动态 \u002F 仅视频动态 切换 |\n| **GIF 支持** | 完美渲染动态中的 GIF 图片 |\n| **图片下载** | 长按预览，一键保存到相册 |\n| **图片预览** | 全局 Overlay 预览层 + iOS 风格开关动画，评论场景顶部文案不遮挡图片主体，支持立体过渡切换 |\n| **@ 高亮** | 动态中 @用户 自动高亮显示 |\n\n### 💬 消息中心与私信\n\n| 功能 | 描述 |\n|-----|-----|\n| **消息中心** | 统一入口查看回复我的、@我的、收到的赞、系统通知 |\n| **消息列表** | 支持查看历史消息，分页加载 |\n| **富文本交互** | 支持表情包、@提醒、图片查看 |\n| **链接预览** | 自动识别视频链接 (BV号) 并生成即时预览卡片 |\n| **消息跳转** | 支持从消息内容直接跳转视频、动态、空间、直播、番剧、音乐与网页 |\n| **深色适配** | 聊天界面完美适配深色模式 |\n\n### 📥 离线缓存\n\n| 功能 | 描述 |\n|-----|-----|\n| **视频下载** | 支持选择画质下载，音视频自动合并 |\n| **断点续传** | 网络中断后自动恢复下载 |\n| **下载管理** | 清晰的下载列表与进度显示 |\n| **本地播放** | 离线视频管理与播放 |\n\n### 🔍 智能搜索\n\n| 功能 | 描述 |\n|-----|-----|\n| **实时建议** | 输入时实时搜索建议 (300ms 防抖优化) |\n| **热门榜单** | 展示当前热门搜索词 |\n| **历史记录** | 搜索历史自动保存，支持去重 |\n| **分类搜索** | 视频 \u002F UP主 \u002F 番剧 分类检索 |\n| **空间内搜索** | 🆕 支持在 UP 空间内搜索 TA 的视频与动态 |\n| **视频音乐查找** | 🆕 快速识别并查找视频中的背景音乐 (BGM) |\n\n### 🎨 现代 UI 设计\n\n| 功能 | 描述 |\n|-----|-----|\n| **Material You** | 动态主题色，根据壁纸自动适配 |\n| **深色模式** | 完美适配系统深色模式 |\n| **iOS 风格底栏** | 优雅的毛玻璃导航栏效果 |\n| **卡片动画** | 波浪式进场动画 + 弹性缩放 + 共享元素过渡 |\n| **骨架屏加载** | Shimmer 效果，优雅的加载占位 |\n| **Lottie 动画** | 点赞\u002F投币\u002F收藏 精美交互反馈 |\n| **庆祝动画** | 三连成功烟花粒子特效 |\n| **粒子消散** | \"不感兴趣\"操作触发灭霸响指式粒子消散动画 |\n| **平板适配** | 侧边栏支持持久化切换，底部栏自动居中适配大屏体验 |\n\n### 👤 个人中心\n\n| 功能 | 描述 |\n|-----|-----|\n| **双登录方式** | 扫码登录 \u002F 网页登录 |\n| **个人信息** | 头像、昵称、等级、硬币数展示 |\n| **观看历史** | 自动记录观看历史，支持云同步 |\n| **收藏管理** | 收藏夹列表与视频管理 |\n| **关注\u002F粉丝** | 关注列表与粉丝列表浏览 |\n\n### 🔒 隐私友好\n\n- 🚫 **无广告** - 纯净观看体验，无任何广告植入\n- 🔐 **权限最小化** - 仅申请必要权限 (无位置\u002F通讯录\u002F电话)\n- 💾 **数据本地存储** - 登录凭证仅存本地，不上传任何隐私数据\n- 🛡️ **遥测默认更克制** - 默认仅开启崩溃追踪，使用情况统计默认关闭，播放器诊断日志独立保留用于排障\n- 🪵 **运行日志默认不落盘** - 普通运行日志不再默认写入磁盘，仍可保留崩溃快照与手动导出能力\n- 🔍 **开源透明** - 完整源码公开，接受社区审查\n\n---\n\n## 📦 下载安装\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Freleases\">\n  \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDownload-Latest%20Release-fb7299?style=for-the-badge&logo=github\" alt=\"Download\">\n\u003C\u002Fa>\n\n### 系统要求\n\n| 项目 | 要求 |\n|-----|-----|\n| **Android 版本** | Android 8.0+ (API 26) |\n| **处理器架构** | 64 位 (arm64-v8a) |\n| **推荐版本** | Android 12+ 获得完整 Material You 体验 |\n| **安装包大小** | 因 ABI 与构建方式不同会有差异，请以 Releases 实际产物为准 |\n\n### 安装步骤\n\n1. 在 [Releases](https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Freleases) 页面下载最新 APK\n2. 在设备上点击安装 (可能需要允许\"未知来源\"应用)\n3. 打开应用，扫码或网页登录 Bilibili 账号\n4. 开始享受纯净的 B 站体验！\n\n---\n\n## 🛠 技术栈\n\n### 核心框架\n\n| 类别 | 技术 | 说明 |\n|-----|-----|-----|\n| **语言** | Kotlin 1.9+ | 100% Kotlin 开发 |\n| **UI 框架** | Jetpack Compose | 声明式 UI，Material 3 设计语言 |\n| **架构模式** | MVVM + Clean Architecture | 分层清晰，易于维护 |\n\n### 网络与数据\n\n| 类别 | 技术 | 说明 |\n|-----|-----|-----|\n| **网络请求** | Retrofit + OkHttp | RESTful API 调用 |\n| **序列化** | Kotlinx Serialization | JSON 解析 |\n| **本地存储** | Room + DataStore | 数据库 + 偏好设置 |\n| **图片加载** | Coil Compose | 支持 GIF 解码 |\n\n### 媒体播放\n\n| 类别 | 技术 | 说明 |\n|-----|-----|-----|\n| **视频播放** | ExoPlayer (Media3) | DASH \u002F HLS \u002F MP4 支持 |\n| **弹幕引擎** | DanmakuFlameMaster | B 站官方弹幕库 |\n| **硬件解码** | MediaCodec | 高效硬件加速 |\n\n### UI 增强\n\n| 类别 | 技术 | 说明 |\n|-----|-----|-----|\n| **动画** | Lottie Compose | 高品质矢量动画 |\n| **毛玻璃** | Haze | iOS 风格模糊效果 |\n| **Material You** | Material 3 | 动态取色主题 |\n\n---\n\n## 📂 项目结构\n\n### 仓库目录（Root）\n\n```\n├── app\u002F                      # Android 应用主模块（Compose UI、业务实现）\n├── baselineprofile\u002F          # Macrobenchmark \u002F Baseline Profile 生成模块\n├── docs\u002F                     # 文档与截图资源\n├── scripts\u002F                  # 构建与性能辅助脚本\n├── plugins\u002F                  # 外置插件与规则样例\n├── androidMain\u002F              # 多平台预留目录\n├── commonMain\u002F               # 多平台预留目录\n├── build.gradle.kts          # 根构建脚本\n└── settings.gradle.kts       # Gradle 模块声明\n```\n\n### Android 主源码结构\n\n> 主路径：`app\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili`\n\n```\napp\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fandroid\u002Fpurebilibili\n├── app\u002F                      # Application \u002F Activity 入口与启动流程\n├── core\u002F                     # 跨业务公共层（cache\u002Fnetwork\u002Fstore\u002Fui\u002Fplayer\u002F...）\n├── data\u002F                     # 数据层（model\u002Frepository）\n├── domain\u002F                   # 领域层（usecase）\n├── feature\u002F                  # 功能层（按场景拆分）\n│   ├── audio\u002F bangumi\u002F cast\u002F category\u002F download\u002F\n│   ├── dynamic\u002F following\u002F home\u002F list\u002F live\u002F\n│   ├── login\u002F message\u002F onboarding\u002F partition\u002F\n│   ├── plugin\u002F profile\u002F search\u002F settings\u002F\n│   ├── space\u002F story\u002F video\u002F watchlater\u002F web\u002F\n│   ├── settings\u002F             # 子分层：policy \u002F screen \u002F ui \u002F update \u002F webdav\n│   └── video\u002F                # 子分层：controller \u002F danmaku \u002F interaction \u002F policy \u002F\n│                             #         player \u002F screen \u002F state \u002F ui \u002F usecase \u002F util \u002F viewmodel\n└── navigation\u002F               # 路由与导航编排\n```\n\n> [!TIP]\n> 结构按当前 `main` 主分支整理。新增目录会在 Release 周期内同步到文档。\n> 结构维护约束见：`STRUCTURE_GUIDELINES.adoc`\n\n---\n\n## 📚 Wiki\n\n- AI \u002F LLM 入口：[`llms.txt`](llms.txt)\n- 兼容别名：`AI.txt` \u002F `llm.txt`\n- AI 导航指南：[`docs\u002Fwiki\u002FAI.md`](docs\u002Fwiki\u002FAI.md)\n- Wiki 首页：[`docs\u002Fwiki\u002FREADME.md`](docs\u002Fwiki\u002FREADME.md)\n- 功能矩阵：[`docs\u002Fwiki\u002FFEATURE_MATRIX.md`](docs\u002Fwiki\u002FFEATURE_MATRIX.md)\n- 架构说明：[`docs\u002Fwiki\u002FARCHITECTURE.md`](docs\u002Fwiki\u002FARCHITECTURE.md)\n- 发布流程：[`docs\u002Fwiki\u002FRELEASE_WORKFLOW.md`](docs\u002Fwiki\u002FRELEASE_WORKFLOW.md)\n- QA 手册：[`docs\u002Fwiki\u002FQA.md`](docs\u002Fwiki\u002FQA.md)\n\n---\n\n## 🗺️ 路线图\n\n> [!TIP]\n> 路线图最后同步于 2026-04-17（v7.9.1）。功能以最新 Release、`CHANGELOG.md` 与主分支代码为准。\n\n### ✅ 已完成功能\n\n- [x] 首页推荐流 + 瀑布流布局\n- [x] 视频播放 + 弹幕 + 手势控制 + 画中画 + 后台播放\n- [x] 听视频模式 + 收藏夹\u002F稍后再看播放列表 + 顺序\u002F随机\u002F单曲循环\n- [x] 番剧\u002F影视播放 + 选集面板\n- [x] 直播播放 + 分区浏览\n- [x] 动态页面 + 图片下载 + GIF 支持 + 多 UP 切换稳定性修复\n- [x] 图片预览文案与过渡升级（评论场景顶部文案 + 方向感动画）\n- [x] 离线下载 + 当前视频批量缓存 + 本地播放\n- [x] 搜索 + 历史记录（批量全删当前暂勿使用）\n- [x] 原生专栏搜索 + 专栏详情页 + 历史记录专栏卡片\u002F跳转\n- [x] Material You + 深色模式\n- [x] 高画质扫码登录 + 首播清晰度鉴权修复（非大会员首次 720P 回退问题）\n- [x] 横屏控制栏增强（字幕面板 \u002F 更多面板 \u002F 播放顺序快捷切换）\n- [x] 共享元素过渡动画 + 返回首页动效优化\n- [x] 平板\u002F折叠屏适配（侧边栏 + 底栏布局）\n- [x] 应用内更新（手动检查 + 自动检查 + 启动提示 + 应用内下载\u002F安装）\n- [x] 插件系统核心架构\n- [x] 内置插件 (空降助手 \u002F 去广告 \u002F 弹幕增强 \u002F 夜间护眼 \u002F 今日推荐单)\n- [x] Firebase Analytics + Crashlytics（支持用户行为统计与崩溃追踪）\n- [x] 评论\u002F动态可选择复制能力（长按进入选择面板）\n- [x] 消息中心分类页（回复我的 \u002F @我的 \u002F 收到的赞 \u002F 系统通知）与消息链接直达\n- [x] 竖屏视频点赞\u002F收藏交互修复 + 收藏夹面板同步\n- [x] Seek 预览重绘优化 + 底栏跨 Tab 快速切换优化\n\n### 🚧 开发中\n\n- [ ] 文档站与 Wiki 持续补全（模块 API \u002F 调试手册 \u002F 回归清单）\n\n### 📋 计划中\n\n- [ ] 观看历史云同步\n- [ ] 收藏夹管理\n- [ ] 多账户切换\n- [ ] 英文\u002F繁体中文支持\n\n---\n\n## 🔄 更新日志\n\n查看完整更新记录：[CHANGELOG.md](CHANGELOG.md)\n\n### 最近更新 (v8.0.6 · 2026-05-06)\n\n- 🎨 **@Jay3-yy** 新增安卓原生 MD3E \u002F Material 3 Expressive 子风格，接入主题 shape、typography、motion 与外观设置。\n- 🧩 **@Jay3-yy** 深度适配顶部栏、底栏、首页顶部分类、共享列表、搜索、通用列表和视频设置面板的 MD3E 策略。\n- 🔄 **[@chenx-dust](https:\u002F\u002Fgithub.com\u002Fchenx-dust) [#267](https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Fpull\u002F267)** 修复平板屏幕旋转体验，调整屏幕大小检测方式。\n- 📺 **[@chenx-dust](https:\u002F\u002Fgithub.com\u002Fchenx-dust) [#267](https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Fpull\u002F267)** 同步修复视频和直播方向策略。\n- 🔖 版本号升级到 `8.0.6`，`versionCode` 升级到 `179`。\n\n### 历史版本\n\n- v7.2.1 \u002F v7.2.0 \u002F v5.2.0 \u002F v5.1.4 \u002F v5.1.3 \u002F v5.1.1 \u002F v5.1.0 \u002F v5.0.5 \u002F v5.0.4 变更详情请查看 [CHANGELOG.md](CHANGELOG.md)\n\n---\n\n## 🏗️ 构建项目\n\n```bash\n# 克隆仓库\ngit clone https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai.git\ncd BiliPai\n\n# 使用 Android Studio 打开项目\n# 或使用命令行构建\n.\u002Fgradlew assembleDebug\n```\n\n### 构建要求\n\n- JDK 21+\n- Android Studio 2024.1+ 或更高版本\n- Android SDK 36（Compile SDK）\n- Gradle 8.13+\n- (可选) `google-services.json`: 放置于 `app\u002F` 目录下以启用 Firebase 功能。如无此文件，构建脚本将自动跳过相关插件，不影响编译运行。\n\n---\n\n## 🤝 贡献指南\n\n欢迎提交 Issue 和 Pull Request！\n\n1. Fork 本仓库\n2. 创建特性分支 (`git checkout -b feature\u002FAmazingFeature`)\n3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)\n4. 推送到分支 (`git push origin feature\u002FAmazingFeature`)\n5. 提交 Pull Request\n\n---\n\n## 🙏 致谢\n\n| 项目 | 说明 |\n|-----|-----|\n| [Jetpack Compose](https:\u002F\u002Fdeveloper.android.com\u002Fjetpack\u002Fcompose) | 声明式 UI 框架 |\n| [ExoPlayer (Media3)](https:\u002F\u002Fgithub.com\u002Fandroidx\u002Fmedia) | 媒体播放引擎 |\n| [DanmakuFlameMaster](https:\u002F\u002Fgithub.com\u002Fbilibili\u002FDanmakuFlameMaster) | B 站弹幕引擎 |\n| [DanmakuRenderEngine](https:\u002F\u002Fgithub.com\u002Fbytedance\u002FDanmakuRenderEngine) | 字节跳动高性能弹幕引擎 |\n| [bilibili-API-collect](https:\u002F\u002Fgithub.com\u002FSocialSisterYi\u002Fbilibili-API-collect) | B 站 API 文档 |\n| [PiliPlus](https:\u002F\u002Fgithub.com\u002FbggRGjQaUbCoE\u002FPiliPlus) | 播放链路、评论样式和移动端体验参考 |\n| [biliSendCommAntifraud](https:\u002F\u002Fgithub.com\u002Ffreedom-introvert\u002FbiliSendCommAntifraud) | 评论反诈检测参考实现 |\n| [BilibiliSponsorBlock](https:\u002F\u002Fgithub.com\u002Fhanydd\u002FBilibiliSponsorBlock) | 空降助手片段数据与 API 参考 |\n| [Miuix](https:\u002F\u002Fgithub.com\u002Fcompose-miuix-ui\u002Fmiuix) | Compose Multiplatform 的 Miuix 风格组件 |\n| [Haze](https:\u002F\u002Fgithub.com\u002Fchrisbanes\u002Fhaze) | 毛玻璃效果库 |\n| [AndroidLiquidGlass](https:\u002F\u002Fgithub.com\u002FKyant0\u002FAndroidLiquidGlass) | 液态玻璃效果 |\n| [Lottie](https:\u002F\u002Fgithub.com\u002Fairbnb\u002Flottie-android) | Airbnb 动画库 |\n| [Coil](https:\u002F\u002Fgithub.com\u002Fcoil-kt\u002Fcoil) | Kotlin 图片加载库 |\n| [Compose Shimmer](https:\u002F\u002Fgithub.com\u002Fvalentinilk\u002Fcompose-shimmer) | 骨架屏加载效果 |\n| [Compose Cupertino](https:\u002F\u002Fgithub.com\u002Falexzhirkevich\u002Fcompose-cupertino) | iOS 风格 UI 组件 |\n| [ZXing](https:\u002F\u002Fgithub.com\u002Fzxing\u002Fzxing) | 二维码生成 |\n| [Room](https:\u002F\u002Fdeveloper.android.com\u002Ftraining\u002Fdata-storage\u002Froom) | 数据库持久化 |\n| [DataStore](https:\u002F\u002Fdeveloper.android.com\u002Ftopic\u002Flibraries\u002Farchitecture\u002Fdatastore) | 偏好设置存储 |\n| [Retrofit](https:\u002F\u002Fgithub.com\u002Fsquare\u002Fretrofit) | HTTP 网络请求 |\n| [Retrofit Kotlinx Serialization Converter](https:\u002F\u002Fgithub.com\u002FJakeWharton\u002Fretrofit2-kotlinx-serialization-converter) | Retrofit + Kotlinx 序列化转换器 |\n| [OkHttp](https:\u002F\u002Fgithub.com\u002Fsquare\u002Fokhttp) | HTTP 客户端 |\n| [Brotli Decoder](https:\u002F\u002Fgithub.com\u002Fgoogle\u002Fbrotli) | Brotli 内容解压支持 |\n| [Cling](https:\u002F\u002Fgithub.com\u002F4thline\u002Fcling) | DLNA\u002FUPnP 投屏能力 |\n| [Jetty](https:\u002F\u002Fgithub.com\u002Fjetty\u002Fjetty.project) | 内嵌 HTTP\u002FServlet 容器（投屏服务链路） |\n| [NanoHTTPD](https:\u002F\u002Fgithub.com\u002FNanoHttpd\u002Fnanohttpd) | 轻量本地代理服务（投屏回源） |\n| [pinyin4j](https:\u002F\u002Fsourceforge.net\u002Fprojects\u002Fpinyin4j\u002F) | 中文拼音转换（搜索\u002F排序辅助） |\n| [Kotlinx Serialization](https:\u002F\u002Fgithub.com\u002FKotlin\u002Fkotlinx.serialization) | Kotlin 序列化库 |\n| [Firebase Crashlytics](https:\u002F\u002Ffirebase.google.com\u002Fdocs\u002Fcrashlytics) | 崩溃追踪分析 |\n| [Orbital](https:\u002F\u002Fgithub.com\u002Fskydoves\u002FOrbital) | 共享元素过渡动画 |\n| [AndroidX Palette](https:\u002F\u002Fdeveloper.android.com\u002Ftraining\u002Fmaterial\u002Fpalette-colors) | 动态取色引擎 |\n| [LeakCanary](https:\u002F\u002Fgithub.com\u002Fsquare\u002Fleakcanary) | 内存泄漏检测 |\n| [WorkManager](https:\u002F\u002Fdeveloper.android.com\u002Ftopic\u002Flibraries\u002Farchitecture\u002Fworkmanager) | 后台任务管理 |\n| [MockK](https:\u002F\u002Fgithub.com\u002Fmockk\u002Fmockk) | Kotlin 单元测试 Mock 框架 |\n| [Turbine](https:\u002F\u002Fgithub.com\u002Fcashapp\u002Fturbine) | Kotlin Flow 测试断言工具 |\n\n如有遗漏，欢迎通过 Issue \u002F PR 继续补充致谢项目与说明。\n\n---\n\n## ⚠️ 免责声明\n\n> [!CAUTION]\n>\n> 1. 本项目仅供 **学习交流**，严禁用于商业用途\n> 2. 数据来源 Bilibili 官方 API，版权归上海幻电信息科技有限公司所有\n> 3. 登录信息仅保存本地，不会上传任何隐私数据\n> 4. 使用本应用观看内容时，请遵守相关法律法规\n> 5. 如涉及版权问题，请联系删除\n\n---\n\n## 📄 许可证\n\n本项目采用 [GPL-3.0 License](LICENSE) 开源协议\n\n这意味着：\n\n- ✅ 可以自由使用、修改和分发\n- ✅ 修改后的代码必须同样开源\n- ❌ 不得用于商业目的\n- ❌ 不得移除原作者信息\n\n## ⭐ Star History\n\n如果这个项目对你有帮助，欢迎点个 Star ⭐\n\n[![Star History Chart](https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=jay3-yy\u002FBiliPai&type=Date)](https:\u002F\u002Fgithub.com\u002Fjay3-yy\u002FBiliPai\u002Fstargazers)\n\n---\n\n\u003Cp align=\"center\">\n  Made with ❤️ by \u003Ca href=\"https:\u002F\u002Fx.com\u002FYangY_0x00\">YangY\u003C\u002Fa>\n  \u003Cbr>\n  \u003Csub>( ゜- ゜)つロ 干杯~\u003C\u002Fsub>\n\u003C\u002Fp>\n","BiliPai 是一个为 B 站用户打造的原生、纯净且可扩展的应用程序。它采用 Kotlin 语言开发，提供高清视频播放（支持4K、1080P60、HDR和Dolby Vision）、自适应码率选择的DASH流媒体技术以及高度可定制的弹幕系统等功能，让用户能够根据个人偏好调整视觉体验。此外，BiliPai内置了六个插件，并支持外部插件扩展，增强了应用的功能性和灵活性。该项目适合那些希望获得更佳观看体验、追求个性化设置及对隐私保护有要求的B站爱好者使用。",2,"2026-06-11 03:12:36","top_language"]