Skip to content

fix(build): guard R8 obfuscation - #6610

Merged
crossle merged 11 commits into
masterfrom
build/agp-931-lint-940-rc01
Sep 2, 2026
Merged

fix(build): guard R8 obfuscation#6610
crossle merged 11 commits into
masterfrom
build/agp-931-lint-940-rc01

Conversation

@SeniorZhai

Copy link
Copy Markdown
Member

No description provided.

- Pin build tooling and the Android container image to immutable versions.
- Verify trusted signing identity and compare complete release APK contents.
Build device-specific APKs from the release bundle so verification
matches Google Play delivery. Preserve non-signature metadata and
fail closed when any installed split differs.
AGP 9.3.1 enables the R8 Configuration Analyzer. Its bundled
intellij-core still calls Java 21 List.removeLast() in
JavaDocParser. Pin lint to 9.4.0-rc01 so the parser uses
Kotlin CollectionsKt.removeLast() on JDK 17.
Previous obfuscation left Gson and persisted-data compatibility unprotected. Keep those boundaries explicit while allowing app code to be optimized and renamed.
@SeniorZhai SeniorZhai added the testing Now testing, but you can review label Aug 24, 2026
Preserve ML Kit Random subclasses because their superclass constructors call the overridden setSeed method.
@SeniorZhai SeniorZhai removed the testing Now testing, but you can review label Sep 2, 2026
@crossle
crossle merged commit 048616f into master Sep 2, 2026
1 check passed
@crossle
crossle deleted the build/agp-931-lint-940-rc01 branch September 2, 2026 06:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants