hyperpay icon indicating copy to clipboard operation
hyperpay copied to clipboard

leaked ServiceConnection

Open mhamTech opened this issue 2 years ago • 5 comments

Hello, I am getting this error whenever I try to make payment, then I close the app on Android devices only.

E/ActivityThread( 6995): Activity io.flutter.embedding.android.FlutterActivity has leaked ServiceConnection com.nyartech.hyperpay.HyperpayPlugin$cctConnection$1@d6b85e0 that was originally bound here E/ActivityThread( 6995): android.app.ServiceConnectionLeaked: Activity io.flutter.embedding.android.FlutterActivity has leaked ServiceConnection com.nyartech.hyperpay.HyperpayPlugin$cctConnection$1@d6b85e0 that was originally bound here E/ActivityThread( 6995): at android.app.LoadedApk$ServiceDispatcher.(LoadedApk.java:1934) E/ActivityThread( 6995): at android.app.LoadedApk.getServiceDispatcherCommon(LoadedApk.java:1806) E/ActivityThread( 6995): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:1785) E/ActivityThread( 6995): at android.app.ContextImpl.bindServiceCommon(ContextImpl.java:1965) E/ActivityThread( 6995): at android.app.ContextImpl.bindService(ContextImpl.java:1896) E/ActivityThread( 6995): at android.content.ContextWrapper.bindService(ContextWrapper.java:810) E/ActivityThread( 6995): at androidx.browser.customtabs.CustomTabsClient.bindCustomTabsService(CustomTabsClient.java:80) E/ActivityThread( 6995): at com.nyartech.hyperpay.HyperpayPlugin.onMethodCall(HyperpayPlugin.kt:189) E/ActivityThread( 6995): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262) E/ActivityThread( 6995): at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295) E/ActivityThread( 6995): at io.flutter.embedding.engine.dart.DartMessenger.lambda$dispatchMessageToQueue$0$DartMessenger(DartMessenger.java:319) E/ActivityThread( 6995): at io.flutter.embedding.engine.dart.-$$Lambda$DartMessenger$TsixYUB5E6FpKhMtCSQVHKE89gQ.run(Unknown Source:12) E/ActivityThread( 6995): at android.os.Handler.handleCallback(Handler.java:938) E/ActivityThread( 6995): at android.os.Handler.dispatchMessage(Handler.java:99) E/ActivityThread( 6995): at android.os.Looper.loopOnce(Looper.java:201) E/ActivityThread( 6995): at android.os.Looper.loop(Looper.java:288) E/ActivityThread( 6995): at android.app.ActivityThread.main(ActivityThread.java:7813) E/ActivityThread( 6995): at java.lang.reflect.Method.invoke(Native Method) E/ActivityThread( 6995): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) E/ActivityThread( 6995): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)

I had this problem previously on an old hyperpay sdk, I could solve it by adding this to MainActivity.java : @Override public void onDestroy() { super.onDestroy();

    if (serviceConnection != null) {
        unbindService(serviceConnection);
    }
}

But I don't know how to solve it in Kotlin, please help, it is making my crashlytics a nightmare

mhamTech avatar Aug 21 '22 07:08 mhamTech