我有顶级功能
fun sendNotification(context:Context, data:Data) {
...//a lot of code here
}
该功能创建通知,有时通知可以包含图像,所以我必须下载它。我正在使用包裹在接口 ImageManager 上的 Glide,所以我必须注入它。我将 Koin 用于 DI,问题是我不能写
val imageManager: ImageManager by inject()
在我的代码中的某处,因为没有实现 KoinComponent 接口的东西。
最明显的解决方案是将已经注入的其他地方imageManager
作为函数参数传递,但我不想这样做,因为在大多数情况下我不需要imageManager
:它取决于Data
参数的类型。