Mark
03/13/2024, 4:38 AMCaused by java.lang.NoSuchMethodError: No interface method H(LR6/j;Ljava/lang/Throwable;)V in class Lkotlinx/coroutines/CoroutineExceptionHandler; or its super classes (declaration of 'kotlinx.coroutines.CoroutineExceptionHandler' appears in /data/app/~~Z-fAOaBS5ZLKRSyO1AxrHQ==/androidx.test.tools.crawler-a5LrOqdluFlu95bOrqipNw==/base.apk)
at kotlinx.coroutines.internal.CoroutineExceptionHandlerImpl_commonKt.handleUncaughtCoroutineException(CoroutineExceptionHandlerImpl_common.kt:34)
at kotlinx.coroutines.CoroutineExceptionHandlerKt.handleCoroutineException(CoroutineExceptionHandler.kt:24)
at kotlinx.coroutines.StandaloneCoroutine.handleJobException(Builders.common.kt:190)
at kotlinx.coroutines.JobSupport.finalizeFinishingState(JobSupport.kt:228)
at kotlinx.coroutines.JobSupport.tryMakeCompletingSlowPath(JobSupport.kt:907)
at kotlinx.coroutines.JobSupport.tryMakeCompleting(JobSupport.kt:864)
at kotlinx.coroutines.JobSupport.makeCompletingOnce$kotlinx_coroutines_core(JobSupport.kt:829)
at kotlinx.coroutines.AbstractCoroutine.resumeWith(AbstractCoroutine.kt:97)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:46)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:102)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.java:585)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:802)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:706)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:693)
Note - there was no issue with a release I made yesterday, and it’s very unlikely the few changes I made since then are related to this.Joffrey
03/13/2024, 7:03 AMMark
03/13/2024, 7:25 AMJoffrey
03/13/2024, 7:38 AMMark
03/13/2024, 8:22 AMJoffrey
03/13/2024, 11:21 AMMark
03/13/2024, 12:25 PM0:4:void handleException(R6.CoroutineContext,java.lang.Throwable):0:0 -> H
# {"id":"com.android.tools.r8.synthesized"}
# {"id":"com.android.tools.r8.residualsignature","signature":"(LR6/j;Ljava/lang/Throwable;)V"}
Here are my coroutines proguard rules:
-keepnames class kotlinx.coroutines.internal.MainDispatcherFactory {}
-keepnames class kotlinx.coroutines.CoroutineExceptionHandler {}
-keepclassmembernames class kotlinx.** {
volatile <fields>;
}
Mark
03/13/2024, 3:24 PM-keepnames class kotlinx.** { *; }
but now get this instead:
Caused by java.lang.NoSuchFieldError: No static field Key of type Lkotlinx/coroutines/CoroutineExceptionHandler$Key; in class Lkotlinx/coroutines/CoroutineExceptionHandler; or its superclasses (declaration of 'kotlinx.coroutines.CoroutineExceptionHandler' appears in /data/app/~~5Ur7lr70UpgMuUJAshTU-A==/androidx.test.tools.crawler-McgI1YcItzv6kKg8CsNnmQ==/base.apk)
Someone else also asking about it here: https://stackoverflow.com/questions/78041019/google-play-testing-app-crash-java-lang-nosuchfielderror-no-field-key-of-type#comment137776357_78064831Joffrey
03/13/2024, 3:25 PMMark
03/13/2024, 3:34 PM