赞
踩
ButterKnife的官网:https://github.com/JakeWharton/butterknife
参考网址:https://blog.csdn.net/zyw0101/article/details/80399225
1.今天在引入ButterKnife框架时,发现官网上
2.引入成功后,运行项目发现报错,错误如下:
Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
解决:
参考网址:
Androidx和Android support库共存问题解决
https://blog.csdn.net/JoBo199501/article/details/86647711
开发问题记录:Manifest merger failed
https://msd.misuland.com/pd/2884250137616451450
原因如下:
经查是因为androidX和support库不能共存。(ButtrKnife10.1.0版本应该是引入了androidX,而我项目里面还是用的support库)
解决方法:
1.第一种方法:
把ButterKnife降版本到(因为其他框架可能还没兼容androidX,所以先降版本了)
implementation ‘com.jakewharton:butterknife:9.0.0-rc3’
annotationProcessor ‘com.jakewharton:butterknife-compiler:9.0.0-rc3’
2.第二种方法:
第一步:在gradle.properties添加:
android.useAndroidX=true
android.enableJetifier=true
第二步
3.运行代码,发现点击事件没反应
经百度,发现别人引用Butterknife用的都是“kapt” 而不是“annotationProcessor”,修改为“kapt”运行成功,
原因是Kotlin中 Kotlin 注解处理工具(Kotlin Annotation processing tool,kapt)替代了 annotationProcessor
修改如下截图:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。