Android Studio /项目显示已损坏

时间:2015-09-28 19:35:20

标签: android

我让我的项目在Android Studio中正常工作,但随后:

  • 我升级到Windows 10
  • 这破坏了我的java安装,但我有 现在也工作(删除所有内容然后重新安装)
  • 我现在也更新到最新稳定的Android Studio

但是当我现在尝试构建我的项目时,我在这里得到了100多个错误:

  

宽:\机器人工作室项目\ mycustomer \应用\建立\中间体\分解-AAR \ com.android.support \程序兼容性-V7 \ 22.2.0 \ RES \值-V21 \值-v21.xml < / p>

每个错误/行都是这样的:

  

错误:(2)检索项目的父项时出错:找不到资源   匹配给定名称'android:TextAppearance.Material.Inverse'。

...

有人问我 app / build.gradle 的样子:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 'Google Inc.:Google APIs:17'
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "dk.company.app"
        minSdkVersion 9
        targetSdkVersion 17
    }

    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
        }
    }

  repositories {
    maven { url "https://jitpack.io" }
  } 
}

dependencies {
    compile 'com.android.support:support-v4:18.0.0'
    compile 'com.google.android.gms:play-services:+'
    compile 'com.github.PhilJay:MPAndroidChart:v2.0.8'  
    compile 'com.android.support:appcompat-v7:22.2.1'
}

我刚刚在依赖项中插入了4rth行

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

但是,过去从来没有必要过,插入它并没有解决我的问题。 (为什么突然有必要。我可以删除依赖 - 这也可以解决问题吗?

...

我发现其他一些特殊的东西,但可能因为项目从未编译正确而发生,就是这段代码:

import dk.company.app.R;

始终以红色突出显示“R” - 即无法解析符号'R'

然而,我的猜测是它从未达到生成文件的程度,但在遇到其他appcompat编译错误时停止了

...

我可以看到有一些已知类似的问题:

然而,提出的解决方案。我已经删除了API 22和API 23在Sdk管理器和文件系统中的所有位置我可以。我已将构建工具和appcompa版本更改为21.1.2

什么都没有用?

3 个答案:

答案 0 :(得分:3)

您可以尝试解决此问题:

  1. 在Build
  2. 中清除项目选项
  3. 重建(不构建)Build
  4. 中的项目选项
  5. 在文件
  6. 中使缓存/重新启动选项无效

    试试这些,这对于Android Studio来说是一个小问题,有时它并不能编译所有内容。

答案 1 :(得分:1)

com.android.support:appcompat-v7:22.2.1依赖项要求您使用至少 API Version 22 (5.1 Lolipop)编译项目。

您目前正在使用API​​版本17(4.2 Jelly Bean)进行定位和编译。您仍然可以将targetSdkVersion保留为17(如果需要),但必须使用API​​ Version 22 +进行编译。

尝试更改:

compileSdkVersion 'Google Inc.:Google APIs:17'

为:

compileSdkVersion 22

注意:您可能还需要下载API Version 22平台。

修改:我们看到您更新了您尝试使用v7:21.x.x appcompat库的问题。这将要求您使用至少API级别21 compileSdkVersion 21进行编译。

答案 2 :(得分:1)

我已经犯了这个错误很多次了。我在this answer中编制了一个列表,列出了我再次使用它的各种方法。

编辑:只想到另一个更可能与你所描述的内容相关的内容。如果您一直在针对SDK 17进行编译,并且在重新安装Java时升级到Java 8,则可能会导致不兼容。我相信只有大于20的SDK才能针对Java 8进行编译。此外,从SDK 17迁移到20+可能会破坏您的样式,这将导致您的xml文件无效,这将阻止R构建。查看res / values / styles并查看它是否找不到您的样式。如果是这样,请将其更改为新SDK的有效样式,清理并构建。