realm / realm-kotlin

Kotlin Multiplatform and Android SDK for the Realm Mobile Database: Build Better Apps Faster.
Apache License 2.0
967 stars 61 forks source link

Crash in release android app (with PRO-GUARD enabled) #1832

Open SergeyKharuk opened 2 months ago

SergeyKharuk commented 2 months ago

How frequently does the bug occur?

Always

Description

Our Android app uses a Local Realm database to store data (io.realm.kotlin:library-base:2.1.0). I've built a release Android APK with pro-guard enabled. Then I'm launching a release app and I have a crash with the following stack trace.

Regarding pro-guard rules, I use the following - https://github.com/realm/realm-kotlin/blob/main/packages/library-base/proguard-rules-consumer-common.pro

I am using: io.realm.kotlin:library-base:2.1.0 Kotlin version - 2.0.10

Stacktrace & log output

java.lang.NoSuchFieldException: No field INSTANCE in class Lkotlin/jvm/internal/StringCompanionObject; (declaration of 'kotlin.jvm.internal.StringCompanionObject' appears in /data/app/~~E5HUYWkRiniKGr84TjvJ_Q==/com.savepoint.minemate-9D29GcQTW3IEzQwbRQK_5Q==/base.apk!classes2.dex)
                                                                                                        at java.lang.Class.getDeclaredField(Native Method)
                                                                                                        at B9.j.invoke(Unknown Source:304)
                                                                                                        at j9.c.getValue(Unknown Source:11)
                                                                                                        at kotlin.reflect.jvm.internal.KClassImpl.v(Unknown Source:10)
                                                                                                        at kotlin.reflect.full.KClasses.a(Unknown Source:52)
                                                                                                        at t4.a.F(Unknown Source:5)
                                                                                                        at com.savepoint.data.armaments_catalogue.entity.ArmamentDb.d(Unknown Source:15)
                                                                                                        at G6.l.get(Unknown Source:2)
                                                                                                        at U8.o0.a(Unknown Source:1708)
                                                                                                        at U8.y0.a(Unknown Source:220)
                                                                                                        at U8.I0.G(Unknown Source:29)
                                                                                                        at A6.f.invoke(Unknown Source:593)
                                                                                                        at U8.L0.invokeSuspend(Unknown Source:110)
                                                                                                        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(Unknown Source:8)
                                                                                                        at pa.W.run(Unknown Source:116)
                                                                                                        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
                                                                                                        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
                                                                                                        at java.lang.Thread.run(Thread.java:1012)
                                                                                                        Suppressed: ua.h: [N0{Cancelling}@8ce0ae9, Dispatchers.IO]

Can you reproduce the bug?

Always

Reproduction Steps

1) Build release APK with Pro-Guard enabled; 2) Launch an APP 3) Crash is occurred

Version

2.1.0

What Atlas App Services are you using?

Local Database only

Are you using encryption?

No

Platform OS and version(s)

Android 14

Build environment

Android Studio Koala Feature Drop | 2024.1.2 Beta 2 Android Gradle Plugin version: 8.6.0-beta02 Gradle version: 8.10.1

sync-by-unito[bot] commented 2 months ago

➤ PM Bot commented:

Jira ticket: RKOTLIN-1127

SergeyKharuk commented 1 month ago

Any updates?

SergeyKharuk commented 1 week ago

Any updates?