如何在Kotlin-Multiplatform项目中确定构建类型

时间:2019-01-18 13:49:04

标签: android gradle kotlin kotlin-native kotlin-multiplatform

我正在开发一个多平台项目,iOS和JVM(我不是直接针对Android)。根据构建类型(调试或发行版),我要配置日志记录级别(即仅打印发行版中的错误)。由于没有可用的BuildConfig类,如何从commonMain知道构建类型?

2 个答案:

答案 0 :(得分:2)

不是该问题的直接答案,但是对于android / ios,可以定义这样的属性:

commonMain:

expect val isDebug: Boolean

在androidMain中:

actual val isDebug = BuildConfig.DEBUG

在iosMain中:

actual val isDebug = Platform.isDebugBinary

答案 1 :(得分:0)

使用expectedactual函数。因此,在common中,您可以创建类似expect fun isDebugEnabled(): Bool的内容,然后在iOS中,您可以使用iOS专用API来实现它,类似于Android。

https://kotlinlang.org/docs/reference/platform-specific-declarations.html