强制将API从26.1降级到25.4

时间:2017-11-30 00:49:29

标签: java android-studio android-gradle

我开始使用API​​ 26的项目。过了一段时间我决定使用API​​ 25,因此我更换了compileSdkVersiontargetSdkVersionminSdkVersion 26-> 25 。但是,我在gradle sync / build上写错了:

  

错误:任务':app:processDebugManifest'的执行失败。   清单合并失败:来自[com.android.support:design:25.4.0] AndroidManifest.xml:28:13-35的属性meta-data#android.support.VERSION@value value =(25.4.0)       也出现在[com.android.support:support-core-utils:26.1.0] AndroidManifest.xml:28:13-35 value =(26.1.0)。       建议:在AndroidManifest.xml:26:9-28:38中添加'tools:replace =“android:value”'以覆盖。

刚开始我看到一些“外部库”(例如core-utils)仍然指向26.1.0所以我试图强制在build.gradle文件中使用25.4.0,但它仍然链接26.1,你可以看到下面的截图。我该怎么做才能强制降级到25.4.0?

enter image description here

1 个答案:

答案 0 :(得分:3)

当我遇到类似的问题时,我会执行两个操作来指出问题;

  1. 使用./gradlew <module_name>:dependencies将可传递解析的内容映射到意外的支持库版本。
  2. 并将此信息传递给模块(看起来您的项目中只有1个gradle模块),然后在该模块中build.gradle明确定义resolutionStrategy这样的信息作为;
  3. 代码段;

    configurations.all {
        resolutionStrategy.force "com.android.support:support-core-utils:{version}"
    }
    

    希望有所帮助。