ColorOS 日历增强 · CourseAlarm

LSPosed 模块(modern libxposed API 102),给 ColorOS 日历补上「真正的课程表」:导入、主题、导出,以及第二天自动设闹钟。

目标应用:ColorOS 日历 com.coloros.calendar(16.24.2 /17.0.0.101实测,Android 16/17 / arm64)、时钟 com.coloros.alarmclock 模块包名:io.github.yuangug.coursealarm | API:102(staticScope)

功能

一、课程表就在主页

底栏变成「日历 | 待办 | 课程表」三段,切到「课程表」是在主页内换内容区,不打开新页面,底栏仍在。 课表本身直接复用宿主的 TableView(CourseWeekViewPagerAdapter + calendars_json_extensions / events_json_extensions), 配色、非本周灰显、午休条都与原生课表页一致。

二、底栏左右钮按页独立

  • 日历 / 待办:左=视图菜单,右=新建(宿主原样)
  • 课程表:左=周次选择,右=课表 ⋮(创建课表 / 课表管理 / 分享课表 / 课程提醒 / 创建桌面快捷方式 / 导入 / 导出 / 课表主题 / 回到本周 / 刷新)

三、课表主题

无背景 / 纯色 / 渐变 / 图片(png jpg webp gif 动图) + 遮罩三档; 有主题时顶栏白底、底栏底衬、页面留白条全部透明,课表文字按背景亮度自动反色。

四、导入 / 导出

  • 教务系统网页登录导入(内嵌浏览器,账号不落盘)、.xlsx、.ics、粘贴课表 HTML / kbList JSON
  • 导出 .xlsx(与原版式一致)/ .ics

五、早八闹钟

每晚 21:00 检查第二天第一节,按设定提前量在系统时钟里建一次性闹钟(走 Clock 的 AI ContentProvider)。

兼容性

  • Android 16/17 / ColorOS 16/17 实测(PLC110/PLR110);宿主版本 16.24.2/17.3.70
  • LSPosed 2.2.1(API 102);staticScope,作用域:com.coloros.calendar、com.coloros.alarmclock

已知限制

  • 课表页暂无日视图(左钮是周次选择)
  • 教务系统导入仅测试一例,无样本
  • 依赖宿主类名/资源名,宿主大版本升级可能需要适配

注意

本模块只改宿主进程内的界面与数据,不替换 App、不改桌面图标;卸载模块即恢复原样。

Releases

0.8.1

Stable

11/14/2026, 12:16:40 PM

v0.8.1 (25)

菜单修复

  • 右上角 ⋮ 里宿主的「课程表」项整条删除(之前是 setVisible(false) 隐藏 —— 隐藏会让菜单点击错位一格)
  • HostPicker / Notifier / MainTabHook 小修

说明

功能与 0.8.0 一致(双版本底栏适配、周次选择、课程详情/编辑),本次只是菜单修正。直接覆盖安装即可。

Assets

1

0.8.0

Stable

11/14/2026, 11:14:35 AM

v0.8.0 (24)

适配 ColorOS 日历 17.3.70 的新底栏,16.x / 17.x 双版本自动分派。

底栏

  • 17.x:走 COUIBottomFloatingAccessoryNavigationBar#addItems 补「课程表」格,图标与宿主一致(未选中线稿 / 选中实心),颜色跟随主题
  • 17.x:左右附件按钮点击代理 → 课表页用「周次选择 / 课表 ⋮」
  • 16.x:保留原有 COUISegmentButtonLayout 文字分段 + 两个圆钮的路径

周次

  • 修「回到本周 / 选择周次」点了没反应(ViewPager2#setCurrentItem 被 R8 改名,改为按形参类型查找)
  • 跳周改为按目标周重建页面(同宿主 refreshCourseData)
  • 选周面板换成宿主 CurrentWeekSelectFragment(查看周课表 + 本周高亮)

课程详情

  • 补 TableViewCallback(宿主只在 SchoolTimeTableActivity 里装),点课程弹宿主 CourseListInfoFragment,并用 ScheduleTableUtils 补起止时间
  • 编辑 / 添加接通宿主 CreateCourseActivity,返回后课表页刷新
  • 左上「第 N 周 ▾」接到同一个宿主周次面板

其它

  • README 补双版本说明;证据台账与 findings 更新(analysis/findings-bar-17.3.70.md)

Assets

1

0.7.0

Stable

11/14/2026, 8:39:14 AM

v0.7.0 (23)

首个公开发布版本。

  • 课程表作为主页第三页:复用宿主 TableView,切换不打开新页面,底栏常驻
  • 底栏左右圆钮按页面独立(课表页:周次选择 / 课表 ⋮)
  • 课表主题:纯色 / 渐变 / 图片(png jpg webp gif)+ 遮罩,文字按背景亮度自动反色
  • 课表管理里切换课表就地重载;不再弹回旧的独立课表页
  • 切页动画:标题淡入淡出 + 课表 0.96↔1 缩放缓动;首屏直接定位当前周
  • 应用 ID 调整为 io.github.yuangug.coursealarm

Assets

1