From 91f2def662b9b065770d7e7043dc43f2061c5a8e Mon Sep 17 00:00:00 2001 From: Chace Daniels Date: Wed, 21 Oct 2026 12:37:11 -0500 Subject: [PATCH] fix(android): keep JS engine classes from R8 --- .changeset/quiet-engines-stay.md | 5 +++++ .../android-js-engine/AndroidJSEngine/consumer-rules.pro | 2 ++ 2 files changed, 7 insertions(+) create mode 100644 .changeset/quiet-engines-stay.md diff --git a/.changeset/quiet-engines-stay.md b/.changeset/quiet-engines-stay.md new file mode 100644 index 00000000..3baa922d --- /dev/null +++ b/.changeset/quiet-engines-stay.md @@ -0,0 +1,5 @@ +--- +"@capacitor/background-runner": patch +--- + +(Android): Fixes a crash at startup in release builds with R8 enabled. The JS engine's classes are now kept, since the native engine finds them by name. diff --git a/packages/android-js-engine/AndroidJSEngine/consumer-rules.pro b/packages/android-js-engine/AndroidJSEngine/consumer-rules.pro index e69de29b..ffc08b7d 100644 --- a/packages/android-js-engine/AndroidJSEngine/consumer-rules.pro +++ b/packages/android-js-engine/AndroidJSEngine/consumer-rules.pro @@ -0,0 +1,2 @@ +# The native engine finds these classes by name through JNI. +-keep class io.ionic.android_js_engine.** { *; }