The month widget's prev/next/today controls and the agenda widget's refresh run through Glance `actionRunCallback<T>()`, which persists the callback's class name into the click PendingIntent and instantiates it reflectively when tapped. Under R8 full mode (AGP 9 default) those callback classes — only ever referenced reflectively — were renamed and lost their no-arg constructor, so the lookup failed silently and the arrows did nothing on release builds (while actionStartActivity taps, which need no reflection, kept working). Keep every ActionCallback's name and constructor. Verified against the release mapping: ShiftMonthAction/ResetMonthAction/RefreshAgendaAction now retain their original fully-qualified names. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2.4 KiB
2.4 KiB