本文参考并整理自:原文链接
前些天在升级AS,更新项目配置时,碰到个问题:
Static interface methods are only supported starting with Android N (--min-api 24): void butterknife.Unbinder.lambda$static$0() Message{kind=ERROR, text=Static interface methods are only supported starting with Android N (--min-api 24): void butterknife.Unbinder.lambda$static$0(), sources=[Unknown source file], tool name=Optional.of(D8)}
按提示最小 api 应为 24 , 将最小 api 版本改为 26 后, 能在 O0 设备上运行,诚不欺我!But,虽说 M0 以前的基本没人用,不用适配了;但是 M、N 总不能也不管了吧?!
网上爬了一遍,最后发现这问题是因为没有指定 jdk 1.8 而产生的,看了下自己的配置,还真没指定。于是在 app build.gradle 中的 android 下添加了指定 jdk 版本的代码,如下:
android {
......
//指定jdk版本
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}