Android - 不要生成值-v26

时间:2018-01-05 14:09:37

标签: android sdk kotlin

我使用SDK 25 在 Kotlin中构建了一个应用。

现在,在Android Studio更新后,我收到此错误:

.../audiobook/build/intermediates/res/merged/opensource/debug/values-v26/values-v26.xml
  No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
  No resource found that matches the given name: attr 'android:keyboardNavigationCluster'.
Execution failed for task ':audiobook:processOpensourceDebugResources'.
  > com.android.ide.common.process.ProcessException: Failed to execute aapt

我知道我应该将我的Gradle依赖项更新为SDK 26,但如果我这样做,那么我需要重写所有的Kotlin代码,因为SDK 25和SDK 26之间有很多变化。

当我只在我的Gradle中的SDK 25 时,有什么方法不生成值-v26文件?感谢。

Here is screenshot of the error

1 个答案:

答案 0 :(得分:1)

首先,您应该将支持/设计库与SDK版本对齐(在您的情况下为25)。例如,

compile 'com.android.support:appcompat-v7:25+'

接下来,您有两个解决方案:

  1. 降低与SDK 26具有传递依赖性的图书馆。
  2. 如果你很幸运,你使用的库是在github上托管的,你可以分叉项目,重新安排gradle文件以满足SDK 25.最后,对你的分叉库进行重新发布并导入它。您的图书馆将在jitpack
  3. 托管