Android butterknife遇见的版本问题
复制别的项目到 moudle中 ,里面就使用了butterknife 各项设置完成后 包也导入 但是最后还是在绑定id 的地方报 Attribute value must be constant
的错误。
找了很多大神写的 但是还是没办法解决 ,于是去:
ButterKnife项目地址:https://github.com/JakeWharton/butterknife
这个里面看了下,试出来一个解决我问题的办法
1.
buildscript {
repositories {
//新加
**mavenCentral()**
google()
}
2.
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
//新加
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
classpath 'com.jakewharton:butterknife-gradle-plugin:10.1.0'
}
3. 在(那里要引用 加哪)
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
//新加
implementation 'com.jakewharton:butterknife:网址里的最新版本'
annotationProcessor 'com.jakewharton:butterknife-compiler::网址里的最新版本(现在:10.1.0)'
}
4.哪里加上第三点 就在那里加上
//注: 版本号得是28 否则设置无效
android {
compileSdkVersion 28
buildToolsVersion "28.0.3"
//新加
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
defaultConfig {
。。。。。。
———————————————————上面是配置过程—————————————————————————————————————————
5.在需要绑定viewId的地方 使用R2.id.***;即可
目前我是按照上面的过程设置的 可以正常运行,如果还出现其他的错误 可按照提示修改 。
注:https://github.com/JakeWharton/butterknife 建议去查看butterknife的版本