Skip to content

v1.2 · 学习弹幕 + 推送整合

Choose a tag to compare

@Shing299 Shing299 released this 05 Oct 15:01
· 14 commits to main since this release

v1.2 · 学习弹幕 + 推送整合

🔗 整合

  • 单服务、单通知:推送调度与学习弹幕合并进唯一的常驻前台服务 BotService,
    通知栏由两条常驻通知(「推送运行中」+「学习弹幕已开启」)并为一条,
    一行里同时交代推送时段与弹幕开关。少一个常驻服务,也少一份内存与唤醒开销。
  • 一次推送、两种呈现:闹钟到点推送一批单词时,同一批词既进通知、也按同样顺序以弹幕划过
    (批次优先,节奏上限 2.5 秒一个);其余时间按你设定的频率随机弹。
    菜单里的「立即推送一批」行为一致。

✨ 新增

  • 学习弹幕(悬浮窗):使用手机时从屏幕右侧向左划过「单词 + 释义」,全天生效,不受推送时段限制。
    • 频率按 个/秒 自定义,亮屏 / 熄屏独立(熄屏默认 0 = 不弹);
    • 样式可调:字体(默认 / 衬线 / 等宽)、字号、颜色、加粗,用描边阴影保证任意背景可读;
    • 多条弹幕同时存在(最多 12 条),每条独占一条纵向「泳道」,互不压住、各自飞完才消失。
    • 选词与你当天的学习对齐:随机弹幕从「今天计划内的词」里抽,
      并补上「已到期、但被 reviewCap 挤出今天计划」的复习词;复习词权重 3×、新词 1×。
      只有当天计划尚未生成时才退回全词库兜底。
  • 深色模式:全部界面(含设置页与对话框)自动跟随系统深浅色。

🐛 修复

  • 高频「单词频闪」:泳道 8→12 且绝不复用已占泳道,没有空泳道时宁可不弹;
    同时去掉「新弹幕一来就删掉半路那条」的淘汰。实测同泳道叠字 80% → 0%,
    弹幕存活时长中位 4.20s(被截断)→ 5.73s(完整飞完)。
  • 弹幕被推送时段闸掉:设好频率却因时段已过而完全不弹,且界面无任何提示 —— 改为开关打开即全天生效。
  • 弹幕服务被系统杀进程后静默停摆(要重开 App 才恢复):改为每 tick 实时读系统亮屏状态,
    并由每批推送闹钟与开机广播顺带把服务重新对齐。
  • 多条弹幕并存:旧实现同时只保留一条,新弹幕一来就把上一条删掉,表现为「只移动一点就飞走了」。
  • 保存初试日期清空当天计划:在设置页点「保存并开始」时,若日期没变不再重排计划。

📦 安装

pm install -r -d kaoyan-widget-v1.2.apk

⚠️ 本项目由 AI 生成,仅供学习交流;定时 / 通知 / 权限相关行为请自行评估后再安装。