Configuring R8 For Compose

Minimales R8/ProGuard-Setup für Compose Release-Builds; lehnt zu weit gefasste keep rules ab

von skydoves · skydoves/compose-performance-skills

Getestet · Funktioniert ★ 8.4/10

Configuring R8 For Compose — Minimales R8/ProGuard-Setup für Compose Release-Builds; lehnt zu weit gefasste keep rules ab

Was es kann

Leitet die Konfiguration der R8-Minifizierung für eine Jetpack Compose Release-Variante an: Aktivieren des vollständigen Modus mit proguard-android-optimize.txt, Einschalten von Minifizierung und Ressourcen-Shrinking und Verlassen auf die gebündelten Consumer-Regeln von Compose, anstatt Compose-weite keeps hinzuzufügen. Wird ausgelöst, wenn die Minifizierung zum ersten Mal aktiviert wird, wenn ein PR eine breite keep-Regel wie `-keep class androidx.compose.** { *; }` hinzufügt oder wenn ein Release-Build nach dem Shrinking abstürzt. Behandelt den AGP missing_rules.txt Reporter und R8 retrace zur Diagnose von Release-Abstürzen.

Testbericht

SKILL.md unter build/configuring-r8-for-compose/SKILL.md über raw GitHub abgerufen; Frontmatter wird mit name+description geparst. Keine Skripte im Text referenziert (eigenständig), und der einzige repo-relative Querverweis (measurement/testing-compose-in-release-mode/SKILL.md) liefert HTTP 200. Keine Sicherheitsmängel; retrace-Befehle verwenden $ANDROID_HOME env, keine fest codierten Pfade. Für die Ausgabe habe ich eine fehlerhafte Konfiguration geschrieben (proguard-android.txt, -keep androidx.compose.**, -keep kotlin.Metadata, -dontobfuscate) und zweimal überprüft: Meine Baseline beließ proguard-android.txt in ihrer endgültigen Empfehlung und wich bei den keeps aus ("wahrscheinlich entfernen, es sei denn, es kommt zu einem Absturz"), während die Skill-geführte Überprüfung zu proguard-android-optimize.txt wechselte, alle drei Zeilen mit zeilenweiser Begründung sowie einen engen kotlinx.serialization-Ersatz löschte und den missing_rules.txt/retrace/APK-analyze-Workflow hinzufügte, den die Baseline weggelassen hatte. Dokumente verlieren einen Punkt: Die Behauptung "proguard-android.txt überspringt R8-Optimierungen" und die Zahlen 75%/60% werden fester angegeben, als ein einziger zitierter Medium-Post unterstützt.

Getestet am: 2026-07-21 · Claude Code 2.x (agent harness)

Installation

git clone --depth 1 https://github.com/skydoves/compose-performance-skills.git /tmp/configuring-r8-for-compose-src
mkdir -p ~/.claude/skills
cp -R /tmp/configuring-r8-for-compose-src/build/configuring-r8-for-compose ~/.claude/skills/configuring-r8-for-compose
# Pure-knowledge skill (single SKILL.md, no scripts/deps). No external tool needed to use it.
# Repo also ships scripts/install-skills.sh that symlinks all 26 skills into ~/.claude/skills/ if you want the whole set.

Befehle & Beispiel-Prompts

  • /configuring-r8-for-composeMinimales R8/ProGuard-Setup für Compose Release-Builds; lehnt zu weit gefasste keep rules ab

Skills reagieren auf normale Anfragen — keine Slash-Befehle nötig. Nach der Installation aktivieren Prompts wie diese den Skill (auf Englisch):

  • Set up R8 full mode for our Compose app
  • Fix our ProGuard keep rules for Compose
  • Enable resource shrinking without breaking Compose