androidx 使用ButterKnife

之前项目用的都是support包下的,ButterKnife用的是8.8.1。

这次开了个新项目,直接给我导的androidx的包。。第一次用,诚惶诚恐。在base里先绑定了,结果运行出来以后报空指针,看了下base里写的也没毛病啊,就去百度找大神,

https://www.jianshu.com/p/eaafc13e71ba

解决方法:

app的build.gradle

    //引入ButterKnife
    implementation "com.jakewharton:butterknife:10.0.0"
    kapt "com.jakewharton:butterknife-compiler:10.0.0"

编译一下,还是报错,不过是新问题:Error: Static interface methods are only supported starting with Android N (--min-api 24)

错误原因:这是因为java8才支持静态接口方法的原因
解决办法:可以通过在app的build.gradle文件中配置使用java8编译:

android {
  ...
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

 参考链接:https://www.jianshu.com/p/49ff4c7c1e29

你可能感兴趣的:(android)