android - 将旧项目迁移到 Android Plugin for Gradle 3.1.2

标签 android gradle

我有一个大的旧项目供 Android 支持。它是在旧的 Gradle 版本(2.2.3)下开发的。我曾经使用最新的 Android Studio,现在我正在尝试将这个项目迁移到当前的 Gradle 版本(3.1.2)。

我已经阅读了谷歌的指南,并从中提出了建议。我设法解决了除两个之外的所有问题。第一个是

WARNING: Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.



我在我的项目中进行了所有替换,据我所知,这是由依赖项中的库引起的。好吧,让我们忍受它。但第二个问题是

error: resource android:attr/foregroundInsidePadding is private. Message{kind=ERROR, text=error: resource android:attr/foregroundInsidePadding is private., sources=[C:\Users\alexanderk.gradle\caches\transforms-1\files-1.1\appcompat-v7-25.1.1.aar\b3fbcbe446f57e45b23f5cfcf67ccbb9\res\values\values.xml:203:5-69], original message=, tool name=Optional.of(AAPT)}*



谷歌的指南对此有以下说法

要解决此问题,只需将 android:foregroundInsidePadding 替换为 foregroundInsidePadding。

没关系,我打开问题文件values.xml ,转到第 203 行,然后... 令人惊讶的是,这里没有foregroundInsidePadding。而且整个xml中没有这个词。我尝试使 Gradle 缓存无效,但在 Gradle 重新创建缓存后问题再次出现。我不能忽视这一点,因为这个问题停止了。

任何想法如何解决这个问题?

最佳答案

appcompat-v7-25.1.1.aar\b3fbcbe446f57e45b23f5cfcf67ccbb9\res\values\values.xml

看起来它提示的不是项目中的 values.xml,而是 appcompat 库中的一个。尝试提升支持库版本

关于android - 将旧项目迁移到 Android Plugin for Gradle 3.1.2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50612199/

相关文章:

android - Room Database 和 Glide Plugins 之间的 Gradle Multi module annotationProcessor 编译问题

java - 从另一个类 Android Studio 访问变量

Android 导航栏在横向上失去颜色

gradle - 如何从Gradle中的另一个插件获取已解析的配置对象?

java - 无法在我的 Android 游戏上加载我的难度级别

android - Android 上的短信网址

Gradle trump 提供了编译的排除?

angular - 如何在有 Angular 项目中将GrailsApplicationCommand与Gradle包装器一起使用?

android - 如何将元数据添加到 gradle/Android Studio 生成 list

intellij-idea - 如何使Gradle中的Idea插件为Kotlin生成正确的项目配置?