Closed ngallazzi closed 9 months ago
you can already try to upgrade to the latest 3.3.2 version, to get the latest fix. Is it in a special case? special device?
Actually it's quite random and not related to particular devices or OS version. Looks more like a concurrency problem during initialisation across modules. We'll try to update to 3.3.2 and let you know, thanks!
let me know how it goes yes 👍
We are using 3.3.2
latest version, last week we did 50% rollout after upgrading koin, same issue still exists but for different classes. It just seems randomly happening don't know what to do. @arnaudgiuliani
there should be an underlying exception, why isn't it in your logs? https://github.com/InsertKoinIO/koin/blob/main/core/koin-core/src/commonMain/kotlin/org/koin/core/instance/InstanceFactory.kt#L59
Is this a limitation of crashlytics client that it cuts the stacktrace too short?
do you have stacktraces @Jaseemakhtar ?
do you have stacktraces @Jaseemakhtar
Yes please check this one Stacktrace.txt
Hello, we're also having this crash reported by Crashlytics, using version 3.4.0. We could not reproduce the issue.
This crash happens repeatedly with the same user. Some devices that had the crash happening:
According to Crashlytics, this crash event happened in the first second of the user's session, and in 97% of the occurrences the app was in the background.
Any help on this?
This is the stack trace: InstanceCreationException_logs.txt
Hello, does anyone have any update on how to reproduce or fix this issue?
Hello @arnaudgiuliani and @ngallazzi
I identified what happened on our app and fixed this issue.
On some of the classes that were being injected by Koin, we had a init block that was causing a crash on some specific devices when initializing a property. My solution was to set this property as lazy and catch the exception. After this change, the InstanceCreationException
is not happening anymore.
So, at least on our app, it wasn't a Koin issue.
@ngallazzi You mentioned that it happened on your SocialLoginHelper
, maybe you can check if there is any possible crash on this class. In my case, the crash was happening when trying to create a EncryptedSharedPreferences
.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
private val sharedPrefs: SharedPreferences by inject()
using koin 3.5.0
..having this issue
Caused by org.koin.core.error.InstanceCreationException: Could not create instance for '[Singleton:'android.content.SharedPreferences']'
Thanks
Please reopen an issue with the full error stack. thanks :)
We also have a similar bag This is error stack
org.koin.core.error.InstanceCreationException: Could not create instance for [Single:'asia.koom.app.LocaleManager',binds:asia.koom.app.LocaleManager] at org.koin.core.instance.InstanceFactory.create(InstanceFactory.kt:62) at org.koin.core.instance.SingleInstanceFactory.create(SingleInstanceFactory.kt:39) at org.koin.core.instance.SingleInstanceFactory.get(SingleInstanceFactory.kt:47) at org.koin.core.registry.InstanceRegistry.resolveInstance$koin_core(InstanceRegistry.kt:103) at org.koin.core.scope.Scope.resolveInstance(Scope.kt:236) at org.koin.core.scope.Scope.get(Scope.kt:204) at asia.koom.app.SingleActivity$special$$inlined$inject$default$1.invoke(ComponentCallbackExt.kt:69) at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74) at asia.koom.app.SingleActivity.getLocaleManager(SingleActivity.kt:29) at asia.koom.app.SingleActivity.attachBaseContext(SingleActivity.kt:79) at android.app.Activity.attach(Activity.java:8027) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3543) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3763) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2202) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:236) at android.app.ActivityThread.main(ActivityThread.java:8069) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:620) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1011) Caused by: org.koin.core.error.InstanceCreationException: Could not create instance for [Single:'asia.koom.app.preferences.PreferencesImpl',binds:asia.koom.app.preferences.Preferences] at org.koin.core.instance.InstanceFactory.create(InstanceFactory.kt:62) at org.koin.core.instance.SingleInstanceFactory.create(SingleInstanceFactory.kt:39) at org.koin.core.instance.SingleInstanceFactory.get(SingleInstanceFactory.kt:47) at org.koin.core.registry.InstanceRegistry.resolveInstance$koin_core(InstanceRegistry.kt:103) at org.koin.core.scope.Scope.resolveInstance(Scope.kt:236) at org.koin.core.scope.Scope.get(Scope.kt:204) at asia.koom.app.di.CommonModule$create$1$17.invoke(CommonModule.kt:194) at asia.koom.app.di.CommonModule$create$1$17.invoke(CommonModule.kt:155) at org.koin.core.instance.InstanceFactory.create(InstanceFactory.kt:51) ... 22 more Caused by: org.koin.core.error.InstanceCreationException: Could not create instance for [Single:'android.content.SharedPreferences',binds:android.content.SharedPreferences] at org.koin.core.instance.InstanceFactory.create(InstanceFactory.kt:62) at org.koin.core.instance.SingleInstanceFactory.create(SingleInstanceFactory.kt:39) at org.koin.core.instance.SingleInstanceFactory.get(SingleInstanceFactory.kt:47) at org.koin.core.registry.InstanceRegistry.resolveInstance$koin_core(InstanceRegistry.kt:103) at org.koin.core.scope.Scope.resolveInstance(Scope.kt:236) at org.koin.core.scope.Scope.get(Scope.kt:204) at asia.koom.app.di.CommonModule$create$1$13.invoke(CommonModule.kt:194) at asia.koom.app.di.CommonModule$create$1$13.invoke(CommonModule.kt:143) at org.koin.core.instance.InstanceFactory.create(InstanceFactory.kt:51) ... 30 more
Describe the bug On some devices we have an initialisation issue we are not able to reproduce systematically. The problem seems to be the initialisation of
SocialLoginHelper
class, however we aren't able to see the exception clearly. Logs coming from firebase crashlyticsExpected behavior Avoid crash or print real exception
Koin project used and used version (please complete the following information): [e.g]:
koin-core version 3.2.0
Additional moduleDefinition Add any other moduleDefinition about the problem here.
@cmunaro