AS编译时报错Duplicate class android.support.v4.app.INotificationSideChannel found和Manifest merger failed with multiple errors, see logs
翻译过来就是Duplicate class error,Android support和Androidx库共存的问题和AndroidManifest.xml文件合并冲突。
解决AndroidManifest.xml文件冲突或者错误,可以在AS中 打开AndroidManifest.xml 文件
如果按照系统推荐添加了xxx属性,AndroidManifest.xml文件application仍是报红线则再往application添加属性
tools:node="replace"
解决android v4库冲突,在AS中打开项目根目录下的gradle.properties文件,加上如下代码:
android.useAndroidX=true//使用androidx
android.enableJetifier=true//第三方库中的android.support强制转为androidx
改到这里,若是新建的activity布局文件的报错,
则将其布局从原android.support.constraint.ConstraintLayout改为同项目新建时的androidx库的格式即可。
在跟着指导书学习实践android的过程中,难免因为指导书所用AS版本和SDK版本等不一致,导致各种看不懂的问题层出不穷,在进行“消息发送”的实验环节,当按照步骤新建一个空的activity之后,整个项目就跑不起来了,依照日志错误去Google解决排除,结果众多的解决方案都是检查AS版本、SDK版本、JDK版本,Gradle版本等,除了最麻烦的重装AS,我挨个尝试无果后,把日志翻译看了一遍又一遍,针对每一个日志报错去排除解决,才整合了如上解决方法。