小编Ker*_*rry的帖子

伴随对象中的 Hilt 注入

我是 Hilt/Dagger 的新手,我还没有找到注入伴随对象的好例子。下面是我的单例和数据类。我正在尝试在 create() 函数中使用 TargetNumber 管理器。我正在寻找语法帮助和原因解释。

@InstallIn(SingletonComponent::class)
@Module
data class TargetNumberManager(
    val maxNumber: Int = 3,
    val prefix: String = "ZZ"
) : ITargetNumberManager {
    private var currentNumber = 0

    @Singleton
    @Provides
    override fun getNextTargetNumber(): String {
        val targetNumberBuilder: StringBuilder = java.lang.StringBuilder()

        targetNumberBuilder.append(prefix)

        val lengthOfNumber = currentNumber.toString().length

        for (i in lengthOfNumber..maxNumber step 1) {
            targetNumberBuilder.append(0)
        }

        targetNumberBuilder.append(currentNumber++)

        return targetNumberBuilder.toString()
    }
}
Run Code Online (Sandbox Code Playgroud)

// 数据类

data class Target(
    @PrimaryKey
    val targetNumber: String,
    val targetType: TargetType?,
    val numOfElement: Int?,
    val location: Coordinate? …
Run Code Online (Sandbox Code Playgroud)

android kotlin dagger-hilt

10
推荐指数
1
解决办法
2573
查看次数

标签 统计

android ×1

dagger-hilt ×1

kotlin ×1