25得票4回答
Java/Android/Kotlin:如何反射私有成员并调用其公共方法

能否使用反射访问对象的私有字段并调用该字段上的公共方法呢? 即class Hello { private World word } class World { public BlaBlaBla foo() } Hello h = new Hello() World worl...

17得票2回答
Proguard和Kotlin-Reflect/Kotlin注解

寻求一个在proguard中能够做到专业的人来帮忙。升级到kotlin 1.1.2-3之后,由kotlin-reflect使用的注解(jackson-module-kotlin v v2.8.8所需的依赖)被剥离了。Proguard的错误信息如下: Warning:kotlin.reflect...

16得票2回答
如何在 Kotlin 中获取 KType?

我正在尝试使用 Kotlin 中的反射功能,但似乎无法理解如何获取 KType 值。 假设我有一个将短语映射到对象工厂的类。在存在歧义的情况下,用户可以提供一个 type 参数,该参数仅限于返回该类型对象(或某个子类型)的工厂进行搜索。fun mapToFactory(phrase: Phr...

15得票3回答
将Kotlin类属性的setter作为函数引用

在下面的示例中,t::x返回一个属性getter的引用。那么我如何获得setter的引用呢? class Test(var x: String) {} fun main(args: Array<String>) { val t = Test("A") val ...

13得票1回答
Kotlin反射Proguard小型排序映射

Warning: kotlin.reflect.jvm.internal.KClassImpl: can't find referenced class kotlin.reflect.jvm.internal.KClassImpl$kotlin.reflect.jvm.internal.KCl...

12得票2回答
如何使用反射修改 Kotlin 中的私有 val?

我可以使用反射来访问一个私有的val值,如下所示fun main() { val mainClass = MainClass() val f = MainClass::class.memberProperties.find { it.name == "info" } f...

11得票2回答
Kotlin反射在使用Proguard时失败

假设我有这个类data class Person(val name: String?) 当我进行代码混淆并运行应用时,出现了以下异常kotlin.reflect.jvm.internal.KotlinReflectionInternalError: No accessors or field ...

8得票1回答
反射调用函数并使用默认参数

给定以下函数 fun function(x: Int = 12) { println("x = $x") } 我该如何使用反射调用它而不指定x(或以某种方式使用默认值,而不是硬编码它)?

8得票2回答
Kotlin运行时错误:未找到kotlin.Any。

我有一个多模块项目。使用相同的构建,apk的大小可能会相差300KB(从17MB到17.3MB)。在运行时大小为17MB的构建中,我收到一个错误: java.lang.AssertionError: Built-in class kotlin.Any is not found. 在该项目...

7得票1回答
反射:隐式和显式lambda声明

我正在尝试理解反射。我有以下代码: fun main(args: Array) { println(lengthL1()) println(lengthL2(s)) println(lengthL1.get()) // Error println(lengthL2.get(s)) // Er...