为啥 Koin 在我的 KMM 应用程序中抛出“未捕获的 Kotlin 异常:kotlin.native.IncorrectDereferenceException”?

Posted

技术标签:

【中文标题】为啥 Koin 在我的 KMM 应用程序中抛出“未捕获的 Kotlin 异常:kotlin.native.IncorrectDereferenceException”?【英文标题】:Why does Koin throw "Uncaught Kotlin exception: kotlin.native.IncorrectDereferenceException" in my KMM app?为什么 Koin 在我的 KMM 应用程序中抛出“未捕获的 Kotlin 异常:kotlin.native.IncorrectDereferenceException”? 【发布时间】:2021-10-01 14:24:42 【问题描述】:

未捕获的 Kotlin 异常:kotlin.native.IncorrectDereferenceException:非法尝试从其他线程访问非共享 org.koin.core.context.GlobalContext.KoinInstanceHolder

我已经检查过我在主线程上调用了 InitKoin(),并且只在 onApplicationDidFinishLaunchingWithOptions 中调用了一次。我不认为我是从另一个线程做的,但我正在使用 Compose UI。该调用是对存储库的调用,我确定我在那里犯了错误。

【问题讨论】:

【参考方案1】:

在我的例子中,我从我的 repo 调用的 GET 调用使用了@withRepoContext .. 。糟糕!

【讨论】:

以上是关于为啥 Koin 在我的 KMM 应用程序中抛出“未捕获的 Kotlin 异常:kotlin.native.IncorrectDereferenceException”?的主要内容,如果未能解决你的问题,请参考以下文章

为啥“”.abcd 返回未定义的值而不是在 Javascript 中抛出未定义的错误(但 Typescript 抛出警告)

Hive UDF 在选择中抛出未找到类异常

为啥我的应用在某些设备上安装时在 Google Play 商店中抛出错误 - 504?

为啥在 ios/cordova 中抛出这个异常?

Cloudinary openUploadWidget 在我的反应应用程序中抛出错误

在模拟器中正常,但在 ios 设备中抛出异常