- build: 清理版本目录死依赖(appcompat、core、material3) - build: 精简 ProGuard keep 规则,仅保留热点路径和第三方库 - refactor: 重命名 PredictiveBackHandler → AppPredictiveBackHandler - test: formatLunarDate 精确断言 + 闰月测试 - test: 统一测试命名风格(下划线),Unconfined → StandardTestDispatcher - docs: 修正文档为纯 Android + Jetpack Compose 描述 - feat(a11y): 添加可访问性语义标注(WeekdayHeader heading、BottomCard 拖拽描述) - feat: 为 DayCell、MonthHeader、WeekdayHeader、BottomCard 添加 @Preview Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
35 lines
1.2 KiB
Prolog
35 lines
1.2 KiB
Prolog
# Baseline Profiles 保留规则:确保方法名不被 R8 混淆,使 profile 规则匹配正确
|
|
-keepattributes SourceFile,LineNumberTable
|
|
|
|
# ========== 启动热点路径保留 ==========
|
|
|
|
# DayCell — 启动最热点
|
|
-keepclassmembers class plus.rua.project.ui.DayCellKt {
|
|
public static void DayCell(...);
|
|
}
|
|
|
|
# LunarCache — 日期计算缓存
|
|
-keepclassmembers class plus.rua.project.LunarCache {
|
|
public static plus.rua.project.DayCellInfo getOrCompute(kotlinx.datetime.LocalDate);
|
|
public static java.lang.String formatLunarDate(kotlinx.datetime.LocalDate);
|
|
public static void precompute(...);
|
|
}
|
|
|
|
# DayCellInfo 数据类
|
|
-keepclassmembers class plus.rua.project.DayCellInfo {
|
|
public java.lang.String getAnnotationText();
|
|
public boolean getIsAnnotationHighlight();
|
|
public java.lang.String getHolidayBadge();
|
|
public java.lang.String getLunarMonthName();
|
|
}
|
|
|
|
# CalendarMonthPage
|
|
-keepclassmembers class plus.rua.project.ui.CalendarMonthPageKt {
|
|
public static void CalendarMonthPage(...);
|
|
public static java.util.List generateMonthDays(...);
|
|
}
|
|
|
|
# ========== 第三方库保留 ==========
|
|
-keep class kotlinx.datetime.** { *; }
|
|
-keep class cn.tyme.** { *; }
|