NewApi lint 不同的行为
NewApi lint different behaviour
最低api等级为21的代码:
interface SampleInterface {
fun interfaceFun() {
val value = HashMap<String, String>().getOrDefault("a", "b")
}
companion object {
@JvmStatic
fun companionFun() {
}
}
}
IDE 发现两个问题:
getOrDefault
需要 api 等级 24
@JvmStatic
伴侣方法还需要 api 级别 24
./gradlew lintDebug
仅针对问题 1 而非问题 2 中止构建。有什么区别?
根据 Supported Java 8 language features and APIs chart,Android 的所有 API 级别都支持默认和静态接口方法。
最低api等级为21的代码:
interface SampleInterface {
fun interfaceFun() {
val value = HashMap<String, String>().getOrDefault("a", "b")
}
companion object {
@JvmStatic
fun companionFun() {
}
}
}
IDE 发现两个问题:
getOrDefault
需要 api 等级 24@JvmStatic
伴侣方法还需要 api 级别 24
./gradlew lintDebug
仅针对问题 1 而非问题 2 中止构建。有什么区别?
根据 Supported Java 8 language features and APIs chart,Android 的所有 API 级别都支持默认和静态接口方法。