如何在 proguard 中保留包级 kotlin 函数?



我在库中将包级函数声明为实用程序,我想在我的主应用程序中使用它。

我的问题是我无法使用 proguard 防止代码混淆(因此在我的主应用程序中使用它(。

我的文件 it.blabla.util.Extensions.kt

fun foo(context: Context, action: String) { ... } 我已经尝试使用以下命令将其保留在 proguard 中:

-keep class it.blablabla.util.UtilPackage.** { *; }

-keep class it.blablabla.util.** { *; }

但这些都不起作用。

在我的应用程序中,我尝试使用foo,如下所示:

foo(applicationContext, "test")

但我无法找到正确的导入来让 foo 通过 aar 模块在我的应用程序中可见。 我不断收到以下编译错误:

未解决的参考:foo

您很可能必须保留该类以及保留元数据(proguard doc(:

-keep class it.blablabla.util.ExtensionsKt {
*;
}
-keepkotlinmetadata

最新更新