是的,Android Koin 支持多模塊。Koin 是一個用于 Android 開發的輕量級依賴注入框架,它可以幫助你更輕松地管理應用程序的依賴關系。在多模塊項目中,你可以使用 Koin 來管理每個模塊的依賴關系,從而實現更好的代碼解耦和模塊化。
要在多模塊項目中使用 Koin,你需要在每個模塊中創建一個 Koin 模塊,并在主模塊中定義一個 Koin 模塊依賴。然后,你可以在主模塊中使用 startKoin
函數啟動 Koin 容器,并讓其他模塊使用 Koin 容器中的依賴。
以下是一個簡單的示例,展示了如何在多模塊項目中使用 Koin:
build.gradle
文件中添加 Koin 依賴:dependencies {
implementation 'io.insert-koin:koin-android:3.1.2'
}
// MainModule.kt
val mainModule = module {
single { MyRepository() as MyRepositoryInterface }
factory { MyViewModel(get()) as MyViewModelInterface }
}
// ModuleA.kt
val moduleAModule = module {
single { ModuleAService() as ModuleAServiceInterface }
}
// ModuleB.kt
val moduleBModule = module {
single { ModuleBService() as ModuleBServiceInterface }
}
// MainActivity.kt
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
startKoin {
androidContext(this@MainActivity)
modules(mainModule, moduleAModule, moduleBModule)
}
}
}
這樣,你就可以在多模塊項目中使用 Koin 來管理依賴關系了。