我一直用Eclipse编程Android,并决定开始迁移到AndroidStudio。我决定使用与Eclipse相同的SDK,然后:

开始新项目设置最低SDK 4.0(API级别14)选择空白活动选项活动名称和布局名称使用的默认名称点击完成

几秒钟后,Gradle完成了构建,并在文件Teste4\app\build\intermediates/deblodded aar\com.android.support\appcompat-v7\23.0.0\res\values-v23\values-v23.xml中向我抛出了两个错误,其中包含以下消息:

错误:(2)检索项的父项时出错:找不到与给定名称“android:TextAppearance.Material.Widget.Button.Inverse”匹配的资源。错误:(2)检索项的父项时出错:找不到与给定名称“android:Widget.Material.Button.Colored”匹配的资源。

在文件->项目结构->模块:app(左列)->财产选项卡下,我设置了以下版本:

“编译Sdk版本”:Android 5.1(API级别22)“生成工具版本”:23.0.2

我应该怎么做才能解决这个问题?

我已经尝试了堆栈溢出问题appcompat-v7:21.0.0中的建议:没有找到与给定名称匹配的资源:attr“android:actionModeShareDrawable”,但它不起作用。


当前回答

我也有同样的问题。我通过将每个子模块的grade.build更新到最新的编译器版本来解决问题。

其他回答

您需要将compileSdkVersion设置为23。

由于API 23 Android删除了已弃用的Apache Http包,因此如果您将其用于服务器请求,则需要将useLibrary“org.Apache.Http.legage”添加到build.gradle,如下链接所示:

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.0"
    ...

    //only if you use Apache packages
    useLibrary 'org.apache.http.legacy'
}

这是因为Android Studio在更新后默认使用API版本23。

以下内容对我有用:

按Ctrl+Shift+Alt+S进入项目结构页面。转到财产选项卡,在构建工具区域中将23.0.0更改为22.0.1(或与之前使用的等效值),然后重新生成项目。

如果这不起作用,请转到gradle:app,然后

compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'

如上所示,编辑v7:23.0.0至v7:22.2.1,并同步渐变。这肯定会奏效的。

您的编译SDK版本必须与支持库主要版本匹配。这是解决你问题的方法。您可以在build.Gradle文件中的Gradle脚本中轻松检查它。Fx:如果compileSdkVersion是23,则编译库必须从23开始。

  compileSdkVersion 23
    buildToolsVersion "23.0.0"
    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 23
        versionCode 340
        versionName "3.4.0"
    }
dependencies {
    compile 'com.android.support:appcompat-v7:23.1.0'
    compile 'com.android.support:recyclerview-v7:23.0.1'
}

始终检查您的Android Studoi是否具有支持的API级别。您可以在Android SDK中进行检查,如下所示:

您应该使用最新版本编译项目,以便从SDK更新和安装。使用Gradle文件按钮将项目与同步项目同步。您也可以继续使用现有版本,但请检查其是否正确安装。如下图所示,请向正确安装的API 22指示。

如果需要,同步您的项目。

这可能会有所帮助。

另一种解决方案:导航到

\sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.x.x

使用7-zip或winrar打开.aar文件,在res文件夹中删除values-23文件夹并保存更改。