问题标签 [kodein]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
96 浏览

kotlin - 如何使用 Kodein 的直接检索来获取绑定为工厂的依赖项?

考虑以下注入器:

以及以下业务逻辑:

如何使用 Kodein 的直接注入功能SpicyBeans使用工厂获取实例,传入List<Herb>和实例化List<Bean> 之后 TastyMeal?我在文档中找不到示例。

0 投票
2 回答
766 浏览

android - 无法解析 org.kodein.di:kodein-di-framework-android

TL; 博士

在 JCenter 访问 Kodein 核心包是未经授权的。

细节

Unauthorized我们正在使用 Kodein 进行依赖注入,但是当 Gradle 尝试下载任何org.kodein.*工件时,JCenter 服务器突然返回。

它也被Kodein-DI 社区报告为一个问题

是否可以从另一台服务器获取工件?

0 投票
1 回答
274 浏览

android - 如何在kodein中使用带有两个参数的工厂绑定来恢复对象?

我调用了一个 ViewModel,它在其构造函数中获取三个参数:

我创建了一个工厂来构建对象 com DI:

我编写了工厂绑定如下:bind() from factory { id: Long, entity: String -> DetailViewModelFactory(id, entity, instance()) },后者是先前报道的。

但是,当我尝试检索对象时,我无法正确拼写代码:

如何使用一系列参数正确检索对象?

我没有在文档中找到如何做,因为信息不足。直接检索多参数关于多参数工厂的小文档如何使用 Kodein 的直接检索来获取作为工厂绑定的依赖项?

0 投票
1 回答
329 浏览

android - 如何修复 Android 中的 Kodein Force 关闭错误

为什么不帮助我任何人???

在我的应用程序中,我使用 Kotin 和Kodein进行依赖注入
我写了下面的代码,但是当运行应用程序时显示强制关闭错误!

在我的应用程序中,我使用 Kotin 和Kodein进行依赖注入
我写了下面的代码,但是当运行应用程序时显示强制关闭错误!

应用类代码:

活动类代码:

我将类初始化applicationManifest

错误信息 :

0 投票
1 回答
1247 浏览

java - Kodein vs Dagger - 无法让 Dagger 与多个模块一起工作

来自 /r/androiddev 的 x-post

我只想说这不是一篇“哪个更好”的帖子。这严格来说是一个关于如何使用 Dagger 构建某些东西的问题(以及我如何在 Kodein 中构建它以帮助说明问题)。

几年来,我在几个工作项目中一直在使用 Kodein,我发现它很容易使用,以至于我不再看 Dagger。我开始了一个新的个人项目,我想再给 Dagger 一次机会。

为简单起见,我有 3 个模块(这是一个普通的桌面应用程序,而不是 Android 应用程序);

  1. 应用程序
  2. 常见的
  3. 谷歌

app包含一个类App

common包含一个类ArgParser(实现并不重要)

google包含几个类:

的依赖项google是:

我特别使用implementation,因为我不希望任何人直接使用底层的谷歌库。

为了让它在 Kodein 中工作,我在main

然后在google

最后在common

我尝试在 Dagger 中实现它,但无法让它工作。我的第一次尝试是依赖于Component和的模块。这不起作用,因为生成的代码引用了未从(如)公开的类。我可以通过使它们成为依赖项来解决这个问题,但我不想公开它们:appcommongooglegoogleDriveapi

接下来我尝试为每个模块制作一个组件(即gradle模块):

然后在app有趣的开始:

好的,让我们将其设为范围:

编辑:尝试AppComponent使用自定义范围:

我怎样才能在 Dagger 中实现这一点?我已经阅读了文档,我想我对它们有所了解,但我不知道下一步该做什么。

0 投票
0 回答
211 浏览

android - 在android协程网络绑定资源类中使用Kodein对App Executor类进行依赖注入的正确方法是什么?

我正在寻找正确的方法来在 Android MVVM 模式的 Repository 中使用 Kodein 注入 App Executors 类的依赖项。我在关注这个人

https://www.baruckis.com/android/kriptofolio-app-series-part-5/ 对于应用程序的其余部分,我使用了 Kodein,为了保持一致性,希望遵循相同的模式。

我在我的应用程序类中使用了它,但它不起作用。

0 投票
1 回答
168 浏览

android - 我很难理解匕首。有人能告诉我这个 Kodein 实现在 Dagger 中的样子吗?

我需要为一个新项目学习 Dagger 2,并且正在努力理解这一切。

我看过一些教程,它们给出了一些清晰的说明,但我仍然有很多困惑,例如各种移动部件(组件、模块、注入器、提供程序)如何相互关联。

我在想,也许有人可以向我展示使用 Kodein 进行依赖注入的以下代码的 Dagger 等效实现,这将有助于弥合我在理解上的差距:

注入.kt

基础应用程序.kt

然后在我需要注入的任何地方我只使用:

谢谢!

0 投票
2 回答
3872 浏览

android - Kotlin、Coroutines、Kodein 和 RecyclerView 列表

我刚开始学习 Kotlin Android,我决定在我的第一个 Kotlin 应用程序 Coroutines 和 Kodein 库中使用。我的问题是返回房间数据库中创建的对象列表。我知道如何为 Recyclerview 设置简单列表,但是我在通过 Coroutines 设置 Recyclerview 中的对象列表时遇到问题。

来自使用 Recyclerview 的活动的函数:

如您所见,LocationAdapter 中的第一个参数是 locationList,这个参数带有红色下划线。错误意味着:

如何解决这个问题?

视图模型:

0 投票
1 回答
757 浏览

android - 如何使用 Kotlin 和 Kodein 结构在改造 2 中拥有多个基本 URL

我已经按照MVVM 和 Retrofit2 的这个教程使用了 Kodein 结构/框架。我想知道,使用相同的框架/结构,我如何在单个应用程序中拥有多个基本 URL。

下面是“MyApi”接口的代码,其中有一个拦截器类作为参数。

以下是 Iam 在 Application 类中初始化 MyApi 接口的方式:

这里 MyApi 中的 instance() 显然是 NetworkConnectionInterceptor。

我在 stackoverflow 和 medium 上看到了很多例子,但我没有得到任何帮助。

0 投票
1 回答
336 浏览

android - 我可以使用一个工厂将视图模型/存储库调用与 kodein 绑定吗

在这个工厂中,我需要使用 Retrofit 从 api 获取我的数据并将缓存与空间一起存储,我的存储库规则这个应用程序!我有存储库暂停功能,负责获取我的数据,一些保存/更新数据获取和保存/更新需要不同的值才能运行,我不知道(还)如何在 Kodein 中配置它我缺乏解决这个问题的经验而且我在 Stackoverflow 中找不到任何可以帮助我的东西。

我试图将变量 ID:String 和编辑的实体 (CampaignEntry) 添加到定义中,它符合但在运行时崩溃

我的主要应用程序 bind() 使应用程序崩溃

我的 ViewModel - 必须在一个 ViewModel 中传递不同调用所使用的变量 id 和 campaignEntry 可能是问题所在 - 但我无法找出正确的解决方案。

为了清楚起见,我的lazyDeferred

存储库快照

我像这样从我的片段中调用 Viewmodel

最后是 ScopedFragment

如果您需要更多代码 - 请询问