Gradle没有选择正确的appcompat-v7:22.2.1

时间:2016-01-28 14:01:19

标签: android gradle android-gradle android-support-library android-appcompat

我遇到一个奇怪的问题,我安装了最新的appcompat-v7:23.0.0 哪里我知道我一定不需要它但我需要使用appcompat-v7:22.2.1或appcompat-v7:22.0.0

我根据自己的需要更新了我的gradle,但它总是提取appcompat-v7:23.0.0这不是必需的,任何人都指导我如何解决这个问题?

error message Appcompat-v7 installed Gradle

2 个答案:

答案 0 :(得分:1)

  

AppCompat(又名ActionBarCompat)最初是作为后端的   适用于在Gingerbread上运行的设备的Android 4.0 ActionBar API,   在反向移植的实现之上提供公共API层   和框架实施。 AppCompat v21提供API和   与Android 5.0同步的功能集

您可以使用

compile 'com.android.support:appcompat-v7:22.0.1'

<强>最后

android {
compileSdkVersion 22
buildToolsVersion '22.0.1' // You can set  buildToolsVersion '23.0.1' 

<强>建议

你应该使用

compile 'com.google.android.gms:play-services:7.8.0' // or 8.4.0

Good Approach : 使用最新版本

  

您需要从内部SDK下载最新的支持存储库   Android Studio经理或独立SDK经理。然后   你可以添加compile&#39; com.android.support:appcompat-v7:23.0.1&#39;

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId ""
        minSdkVersion 17
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }

dependencies {

    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.google.android.gms:play-services:7.8.0' // or 8.4.0
}

修改

您可以使用此类路径

classpath 'com.android.tools.build:gradle:1.3.0'

然后清理 - 重建 - 重新启动 - 同步您的项目。希望这会有所帮助。

答案 1 :(得分:1)

因为您正在使用

compile 'com.google.android.gms:play-services:+'

您使用的是与支持库 v23 有依赖关系的最新版本compile 'com.google.android.gms:play-services:8.4.0'

您必须使用API​​ 23进行编译。

更改此行:

 compileSdkVersion 23

如果您不想使用api23,您可以使用特定版本,如

compile 'com.google.android.gms:play-services:7.8.0' 

一般来说,在您的依赖项中使用 +并不是一个好习惯,因为您将来无法使用相同的库复制该版本,并且您不会; t知道你正在使用哪个版本。

同样您可以将api23与Httpclient一起使用 只需使用:

android {
    useLibrary 'org.apache.http.legacy'
}

更多info here.

useLibrary需要gradle插件1.3.0(classpath 'com.android.tools.build:gradle:1.3.0')或更高版本。