我想使用sdk版本22编译我的项目,但android studio使用版本23,因此它给出了一些错误。我使用的是Android工作室1.3,我不想使用sdk 23(我有一些不赞成的方法,我现在不想替换它们)。这是我的gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "ir.mhealth.healthnotation"
minSdkVersion 16
targetSdkVersion 22
versionCode 2
versionName "1.0.0.1"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.android.support:recyclerview-v7:22.2.0'
compile 'com.jjoe64:graphview:4.+'
compile 'com.afollestad:material-dialogs:0.7.+'
compile 'com.google.android.gms:play-services-analytics:7.8.0'
}
当我运行gradle依赖关系报告时,我得到了这个回复:
------------------------------------------------------------
Project :app
------------------------------------------------------------
_debugAndroidTestApk - ## Internal use, do not manually configure ## No dependencies
_debugAndroidTestCompile - ## Internal use, do not manually configure ## No dependencies
_debugApk - ## Internal use, do not manually configure ##
+--- com.android.support:appcompat-v7:22.2.0 -> 23.0.0
| \--- com.android.support:support-v4:23.0.0
| \--- com.android.support:support-annotations:23.0.0
+--- com.android.support:recyclerview-v7:22.2.0 -> 23.0.0
| +--- com.android.support:support-annotations:23.0.0
| \--- com.android.support:support-v4:23.0.0 (*)
+--- com.jjoe64:graphview:4.+ -> 4.0.1
| \--- com.android.support:support-v4:21.0.3 -> 23.0.0 (*)
+--- com.afollestad:material-dialogs:0.7.+ -> 0.7.9.1
| +--- com.android.support:support-v4:23.0.0 (*)
| +--- com.android.support:appcompat-v7:23.0.0 (*)
| +--- com.android.support:recyclerview-v7:23.0.0 (*)
| \--- com.android.support:support-annotations:23.0.0
\--- com.google.android.gms:play-services-analytics:7.8.0
\--- com.google.android.gms:play-services-base:7.8.0
\--- com.android.support:support-v4:22.2.0 -> 23.0.0 (*)
debugCompile - ## Internal use, do not manually configure ##
+--- com.android.support:appcompat-v7:22.2.0 -> 23.0.0
| \--- com.android.support:support-v4:23.0.0
| \--- com.android.support:support-annotations:23.0.0
+--- com.android.support:recyclerview-v7:22.2.0 -> 23.0.0
| +--- com.android.support:support-annotations:23.0.0
| \--- com.android.support:support-v4:23.0.0 (*)
+--- com.jjoe64:graphview:4.+ -> 4.0.1
| \--- com.android.support:support-v4:21.0.3 -> 23.0.0 (*)
+--- com.afollestad:material-dialogs:0.7.+ -> 0.7.9.1
| +--- com.android.support:support-v4:23.0.0 (*)
| +--- com.android.support:appcompat-v7:23.0.0 (*)
| +--- com.android.support:recyclerview-v7:23.0.0 (*)
| \--- com.android.support:support-annotations:23.0.0
\--- com.google.android.gms:play-services-analytics:7.8.0
\--- com.google.android.gms:play-services-base:7.8.0
\--- com.android.support:support-v4:22.2.0 -> 23.0.0 (*)
-debugUnitTestApk - ## Internal use, do not manually configure ##
no dependencies
-debugUnitTestCompile - ## Internal use, do not manually configure ##
no dependencies
_releaApk - ## Internal use, do not manually configure ##
+--- com.android.support:appcompat-v7:22.2.0 -> 23.0.0
| \--- com.android.support:support-v4:23.0.0
| \--- com.android.support:support-annotations:23.0.0
+--- com.android.support:recyclerview-v7:22.2.0 -> 23.0.0
| +--- com.android.support:support-annotations:23.0.0
| \--- com.android.support:support-v4:23.0.0 (*)
+--- com.jjoe64:graphview:4.+ -> 4.0.1
| \--- com.android.support:support-v4:21.0.3 -> 23.0.0 (*)
+--- com.afollestad:material-dialogs:0.7.+ -> 0.7.9.1
| +--- com.android.support:support-v4:23.0.0 (*)
| +--- com.android.support:appcompat-v7:23.0.0 (*)
| +--- com.android.support:recyclerview-v7:23.0.0 (*)
| \--- com.android.support:support-annotations:23.0.0
\--- com.google.android.gms:play-services-analytics:7.8.0
\--- com.google.android.gms:play-services-base:7.8.0
\--- com.android.support:support-v4:22.2.0 -> 23.0.0 (*)
-releaseCompile - ## Internal use, do not manually configure ##
+--- com.android.support:appcompat-v7:22.2.0 -> 23.0.0
| \--- com.android.support:support-v4:23.0.0
| \--- com.android.support:support-annotations:23.0.0
+--- com.android.support:recyclerview-v7:22.2.0 -> 23.0.0
| +--- com.android.support:support-annotations:23.0.0
| \--- com.android.support:support-v4:23.0.0 (*)
+--- com.jjoe64:graphview:4.+ -> 4.0.1
| \--- com.android.support:support-v4:21.0.3 -> 23.0.0 (*)
+--- com.afollestad:material-dialogs:0.7.+ -> 0.7.9.1
| +--- com.android.support:support-v4:23.0.0 (*)
| +--- com.android.support:appcompat-v7:23.0.0 (*)
| +--- com.android.support:recyclerview-v7:23.0.0 (*)
| \--- com.android.support:support-annotations:23.0.0
\--- com.google.android.gms:play-services-analytics:7.8.0
\--- com.google.android.gms:play-services-base:7.8.0
\--- com.android.support:support-v4:22.2.0 -> 23.0.0 (*)
.
.
.
wearApp - Link to a wear app to embed for object 'main'.
No dependencies
BUILD SUCCESSFUL
为什么它试图用23替换sdk 22 ???我该如何解决?
(我应该提到我没有任何问题,直到我决定将我的android工作室更新到1.4版。更新后,它下载了sdk 23而我没有改变我的gradle文件,android如你所见,工作室尝试使用sdk 23编译项目。我卸载android studio并安装旧版本,但问题并没有解决。我知道版本1.4使用sdk 23进行新项目,但我的项目并不新鲜。我现在使用旧版本的android studio,但它并没有解决我的问题)
答案 0 :(得分:2)
您使用的某些库与支持库v23 具有相关性。
例如:
com.afollestad:material-dialogs:0.7.+ -> 0.7.9.1
| +--- com.android.support:support-v4:23.0.0 (*)
| +--- com.android.support:appcompat-v7:23.0.0 (*)
| +--- com.android.support:recyclerview-v7:23.0.0 (*)
当您使用api22时,使用支持库v23,您必须使用api23 进行编译。
这是你问题的原因。
你可以:
使用API23进行编译使用build.gradle
更改compileSdkVersion 23
在其他库中排除支持库v23。
你可以像这样使用somenthing。
compile('com.afollestad:material-dialogs:0.7.+') {
exclude group: 'com.android.support'
}
注意。它可能会导致此库出现问题!