生成失败,因为具有配置的资源'attr/mode'值重复



在我从 1.1.2 -> 2.0.0-alpha2 升级约束布局版本之后

我收到此错误

java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: Android resource compilation failed
/Users/x/.gradle/caches/transforms-1/files-1.1/appcompat-v7-28.0.0-rc01.aar/
d5741c4d219b7f0eeb18436ff6f46f63/res/values/values.xml:1104:5-1169:25: AAPT: error: duplicate value for resource 'attr/mode' with config ''.
/Users/x/.gradle/caches/transforms-1/files-1.1/appcompat-v7-28.0.0-rc01.aar/
d5741c4d219b7f0eeb18436ff6f46f63/res/values/values.xml:1104:5-1169:25: AAPT: error: resource previously defined here.

appCompat 版本是 v7:28.0.0-rc01

此问题在 AS 3.3 Canary 3 和 3.2 稳定版和 3.1.4 和 3.0.1 版本上可重现

我怎样才能解决这个问题?

错误消息看起来像是将Android X与支持库混合在一起时可以得到的那种错误消息,至少当我找到它时是这样。

如果您使用任何Android X依赖项,则无法使用任何旧的Android支持库依赖项,否则在将它们全部合并到一个apk中时会遇到重复的资源和其他问题。

确保您使用的是所有 Android X 或所有支持库。 如果您要迁移到 Android X,请确保您拥有

android.useAndroidX=true
android.enableJetifier=true

gradle.properties,以便您的其他依赖项被视为 Android X。

为什么使用appcompat-v7-28.0.0-rc01而不是appcompat-v7-28.0.0

甚至androidx.appcompat:appcompat:1.0.0

rc01表示release candidate;仅用于测试目的。

相关内容

  • 没有找到相关文章

最新更新