adaptyteam / AdaptySDK-Flutter

SDK for growing mobile in-app purchases
https://docs.adapty.io/docs/quickstart
MIT License
88 stars 15 forks source link

Crash on Andoid #101

Closed ABespolov closed 5 months ago

ABespolov commented 6 months ago

Hi, we experience crashes in our application on android for some users; adapty_flutter: 2.9.0

java.lang.IllegalStateException: Reply already submitted
    at w8.c$g.a(DartMessenger.java:36)
    at h9.j$a$a.success(MethodChannel.java:15)
    at com.adapty.flutter.AdaptyCallHandler.handleAdaptyResult(AdaptyCallHandler.kt:21)
    at com.adapty.flutter.AdaptyCallHandler.handleGetPaywall$lambda$8(AdaptyCallHandler.kt:16)
    at com.adapty.flutter.AdaptyCallHandler.h(AdaptyCallHandler.kt:1)
    at com.adapty.flutter.m.onResult(R8$$SyntheticClass:7)
    at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invokeSuspend(AdaptyInternal.kt:22)
    at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invoke(AdaptyInternal.kt:1)
    at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invoke(AdaptyInternal.kt:2)
    at dd.o$a$a.emit(Emitters.kt:80)
    at dd.l$c.emit(Errors.kt:65)
    at dd.g.c(Channels.kt:140)
    at dd.g.a(Channels.kt:1)
    at dd.g$a.invokeSuspend(Channels.kt:12)
    at kotlin.coroutines.jvm.internal.a.resumeWith(ContinuationImpl.kt:12)
    at ad.w0.run(DispatchedTask.kt:124)
    at android.os.Handler.handleCallback(Handler.java:942)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loopOnce(Looper.java:240)
    at android.os.Looper.loop(Looper.java:351)
    at android.app.ActivityThread.main(ActivityThread.java:8381)
    at java.lang.reflect.Method.invoke(Method.java)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:584)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1013)
Screenshot 2024-01-19 at 17 04 51
vladd-g commented 6 months ago

@ABespolov thank you for the report! working on it

qwertyway commented 5 months ago

Same problem here. A more deobfuscated stacktrace below

Fatal Exception: java.lang.IllegalStateException: Reply already submitted
       at io.flutter.embedding.engine.dart.DartMessenger$Reply.reply(DartMessenger.java:435)
       at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler$1.success(MethodChannel.java:272)
       at com.adapty.flutter.AdaptyCallHandler.handleAdaptyResult(AdaptyCallHandler.kt:235)
       at com.adapty.flutter.AdaptyCallHandler.handleGetPaywall$lambda$8(AdaptyCallHandler.kt:116)
       at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invokeSuspend(AdaptyInternal.kt:200)
       at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invoke(AdaptyInternal.kt:1)
       at com.adapty.internal.AdaptyInternal$getPaywall$1$2.invoke(AdaptyInternal.kt:2)
       at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(Emitters.kt:223)
       at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catchImpl$2.emit(Errors.kt:158)
       at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt(Channels.kt:37)
       at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt(Channels.kt:1)
       at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend(Channels.kt:12)
       at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
       at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
       at android.os.Handler.handleCallback(Handler.java:938)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loop(Looper.java:237)
       at android.app.ActivityThread.main(ActivityThread.java:8163)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:656)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:967)
vladd-g commented 5 months ago

hi @ABespolov @qwertyway, fixed in v2.9.1