我目前正在尝试将Koin实现到我的 Android 应用程序中。它在我可以访问get()
或的活动中运行良好inject()
,但在这些类之外我无法使用它们。
例如,我有一个非常简单的类Device
,它只会创建用户设备的一个对象。我需要MyStorage
在那里获得参考。
data class Device(
val username: String,
...
) {
companion object {
fun get(): Device {
val storage: MyStorage = get() // does not work
val username = storage.username
return Device(
username,
...
)
}
}
}
但get()
在此类中不起作用,并且手动添加导入也无济于事。
我也看到了这个答案,https://stackoverflow.com/a/49629378/3106174,它有扩展KoinComponent
,但在这种情况下或我遇到的其他情况下不起作用,例如任何类之外的顶级函数。
任何提示将非常感谢。谢谢。