WalletConnect / WalletConnectKotlinV2

WalletConnect Kotlin SDK v2
Apache License 2.0
197 stars 70 forks source link

ClassNotFoundException ExpiredProposal #1322

Open mahdit8 opened 6 months ago

mahdit8 commented 6 months ago

Describe the bug Encountered a runtime issue leading to a ClassNotFoundException while executing Kotlin code related to a WalletConnect operation. This error suggests a problem with dynamic class resolution, impacting the successful execution of the operation.

Details: Error Type: ClassNotFoundException Context: Occurs during the handling of a WalletConnect operation within a Kotlin codebase. Implication: Indicates that the Java Virtual Machine (JVM) was unable to locate a required class, implying a potential issue with the classpath or library integration.

Caused by: java.lang.ClassNotFoundException: com.walletconnect.web3.wallet.client.Wallet$Model$ExpiredProposal
        at com.bitcoin.walletconnect.v2.WCClientV2$3$1.invokeSuspend(WCClientV2.kt:219)
        at com.bitcoin.walletconnect.v2.WCClientV2$3$1.invoke(Unknown:8)
        at com.bitcoin.walletconnect.v2.WCClientV2$3$1.invoke(Unknown:4)
        at kotlinx.coroutines.flow.FlowKt__MergeKt$mapLatest$1.invokeSuspend(Merge.kt:217)
        at kotlinx.coroutines.flow.FlowKt__MergeKt$mapLatest$1.invoke(Unknown:13)
        at kotlinx.coroutines.flow.FlowKt__MergeKt$mapLatest$1.invoke(Unknown:4)
        at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1$2.invokeSuspend(Merge.kt:34)
        at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1$2.invoke(Unknown:8)
        at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1$2.invoke(Unknown:4)
        at kotlinx.coroutines.intrinsics.UndispatchedKt.startCoroutineUndispatched(Undispatched.kt:44)
        at kotlinx.coroutines.CoroutineStart.invoke(CoroutineStart.kt:112)
        at kotlinx.coroutines.AbstractCoroutine.start(AbstractCoroutine.kt:126)
        at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch(Builders.common.kt:56)
        at kotlinx.coroutines.BuildersKt.launch(Unknown:1)
        at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch$default(Builders.common.kt:47)
        at kotlinx.coroutines.BuildersKt.launch$default(Unknown:1)
        at kotlinx.coroutines.flow.internal.ChannelFlowTransformLatest$flowCollect$3$1.emit(Merge.kt:33)
        at kotlinx.coroutines.flow.SharedFlowImpl.collect$suspendImpl(SharedFlow.kt:382)
        at kotlinx.coroutines.flow.SharedFlowImpl$collect$1.invokeSuspend(Unknown:15)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
        at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
        at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
        at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
        at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)

SDK Version

To Reproduce Not sure when this happens but I could find this for several users on bugsnag.

Expected behavior Class should be founded

Screenshots If applicable, add screenshots to help explain your problem.

Device (please complete the following information): So far:

Additional context Add any other context about the problem here.

Talhaali00 commented 5 months ago

@mahdit8 Have you added any Proguard rules with your integration of the WC SDK? It's odd to see a ClassNotFoundException at runtime

mahdit8 commented 5 months ago

@TalhaAli00 There is no pro-guard rule as minification is not enabled.