Error
Error:Execution failed for task ':app:preDebugAndroidTestBuild'. >
Conflict with dependency 'com.android.support:support-annotations' in project ':app'.
Resolved versions for app (26.1.0) and test app (27.1.1) differ.
See https://d.android.com/r/tools/test-apk-dependency-conflicts.html for details.
問題說明
因為使用的依賴包版本不同的原因,是以,我們強制使用一樣的版本即可解決問題
在adroid結點下添加下述代碼
configurations.all {
resolutionStrategy.force 'com.android.support:support-annotations:26.1.0'
}
把版本号修改一下即可
一勞永逸的辦法
上面的辦法在目前的項目是已經解決了的,但是,建立一個項目又會出現同樣的問題,這就很煩了。
我們直接通過修改建立一個項目的模闆,直接把預設的那些設定改了,即可達成一勞永逸
我的版本是Android Studio 3.0.1 網上查找修改這些預設設定的時候,資料發現不太一樣,自己摸索也是找到了關鍵的地方
找到路徑
Android Studio的根目錄\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root
的
shared_macros.ftl
檔案,上面自己需要的代碼複制在android結點下即可
擴充,修改buildToolVersion targetVersion gradleVersion等預設版本
-
appcompat版本号
--
Android Studio的根目錄\plugins\android\lib\templates\gradle-projects\NewAndroidModule
recipe.xml.ftl
<#if backwardsCompatibility!true>
</#if>
- compileSdkVersion,buildToolsVersion,targetSdkVersion等版本号
Android Studio的根目錄\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root
shared_macros.ftl
android { compileSdkVersion 25 <#if compareVersions(gradlePluginVersion, '3.0.0') lt 0>buildToolsVersion 27.0.1</#if> <#if isBaseFeature> baseFeature true </#if> defaultConfig { <#if hasApplicationId> applicationId "${applicationId}" </#if> minSdkVersion <#if minApi?matches("^\\d+$")>${minApi}<#else>'${minApi}'</#if> targetSdkVersion 25 versionCode 1 versionName "1.0"
小工具(懶人必備)
AlterASDefaultSetting
提問之前,請先看提問須知
點選右側圖示發起提問
或者加入QQ群一起學習
TornadoFx學習交流群:1071184701