在多模块应用程序中使用koin

问题描述 投票:0回答:1

嗨,在多模块应用程序中,我正在使用loadKoinModules()加载子模块,并在功能模块中使用unloadKoinModules()对其进行卸载,我的代码如下

class FeatureActivity:AppCompatActivity(){
    private val loadFeatures by lazy { loadKoinModules(featureModule) }
    private fun injectFeatures() = loadFeatures

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        injectFeatures()
    }

   override fun onDestroy() {
        super.onDestroy()
        unloadKoinModules(featureModule)
    }
} 

一切正常,但是当加载相同活动的另一个实例时,问题开始。当前活动处于后台。由于以下错误导致应用崩溃

org.koin.error.BeanOverrideException:  Try to override definition with Factory

是否有避免此错误的方法

android kotlin dependency-injection multi-module koin
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.