#8587·capacitor

[Bug]: App crashes on Android when minifyEnabled true

Author: HarelMCreated Sep 3, 2026Updated Sep 7, 2026
Labelstriage

Capacitor Version

Capacitor Doctor

Latest Dependencies:

@capacitor/cli: 8.5.1 @capacitor/core: 8.5.1 @capacitor/android: 8.5.1 @capacitor/ios: 8.5.1

Installed Dependencies:

@capacitor/cli: 8.5.1 @capacitor/android: 8.5.1 @capacitor/core: 8.5.1 @capacitor/ios: 8.5.1

[success] iOS looking great! [success] Android looking great!

Other API Details

bash
npm: 11.13.0
node: v24.16.0

Platforms Affected

  • iOS
  • Android
  • Web

Current Behavior

Plugins crashes on production builds when obfuscation is enabled, which is now required for feb 2027.

Expected Behavior

No crashes

Project Reproduction

https://github.com/IsraelHikingMap/Site/tree/main/IsraelHiking.Web

Additional Information

I've played around with it and the following rules have solved it: For all related plugin that uses permissions:

-keep @interface com.getcapacitor.**

The following is needed for the camera plugin, let me know if you want me to open a different issue:

# The camera plugin carries its parameters and its results between the app and the editor as gson
# objects, and neither gson nor the ioncamera-android library that uses it ships rules of its own.
# Gson works over these classes by reflection: it needs the fields to still be there to fill them,
# the @SerializedName on each one to know which json key it answers to, and the generic signature
# of a TypeToken to know what it is building - none of which R8 can see is used. These are gson's
# own documented rules.
-keepattributes Signature
-dontwarn sun.misc.**
-keepclassmembers,allowobfuscation class * {
    @com.google.gson.annotations.SerializedName <fields>;
}
-keep,allowobfuscation,allowshrinking class com.google.gson.reflect.TypeToken
-keep,allowobfuscation,allowshrinking class * extends com.google.gson.reflect.TypeToken
-keep class * extends com.google.gson.TypeAdapter
-keep class * implements com.google.gson.TypeAdapterFactory
-keep class * implements com.google.gson.JsonSerializer
-keep class * implements com.google.gson.JsonDeserializer

If there's more information you'd like me to check please let me know.