Android Studio 0.4.2工作正常,今天我打开它,几乎所有东西都是红色的,自动完成已经停止工作。我看了一下导入,AS似乎告诉我它找不到android.support。V4(为我提供了删除未使用的导入的选项)。(android.support。V7似乎没问题)。

我尝试过的事情:

重建项目 清理项目 同步Gradle文件 关闭项目,关闭AS,重新启动/重新开放 文件>无效缓存/重启 检查Lint,没有发现任何明显的东西 在SDK管理器中仔细检查所有支持库是否是最新的 检查我的构建。Gradle,虽然没有变化,它和往常一样,它一直工作的方式。

下面是相关信息:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'android'

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion '19.0.0'

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
    }
}

dependencies {
    compile 'com.android.support:support-v4:19.0.0'
    compile 'com.android.support:gridlayout-v7:19.0.0'
    compile 'com.android.support:appcompat-v7:19.0.0'
    compile 'com.google.android.gms:play-services:4.0.30'
    compile project(':libraries:facebook')
    compile files('libs/core.jar')
}

当我点击“与Gradle同步”并打开“项目设置”时,我得到一个红色错误,告诉我我有重复的库引用,并删除未使用的。

我的项目编译和运行良好,但我真的需要自动完成工作!!有人有什么建议吗?


当前回答

我也想把这个说出来

对我有效的是将我的构建变体更改为以前工作的变体。出于某种原因,我以前改变过这个(我忘了为什么)。

无论哪种方式,最好的方法是试着记住当天你做了什么更改(可能是像清洁这样的小事情,或者回到以前的git提交)……等等。

这也有助于尝试重新同步gradle和强制重建。

其他回答

我使用共享首选项,但Android工作室抱怨编辑器符号。然后,我补充道

import android.content.SharedPreferences.Editor;

符号现在很酷。

请检查您的项目路径是否有特殊字符,如!(感叹号)。

在我遇到的一个类似的问题中,这是根本原因——因为许多Java应用程序似乎不容忍这样的特殊字符(例如,从终端执行'gradlew clean'将失败并抛出RunTimeException.)。 网上发布的其他解决方案都对我没有帮助。但是,一旦我把!从路径和做了一个干净的构建,Android Studio神奇地工作。

我有一个更奇怪的解决方案。为了防止有人遇到这种情况,有必要再次检查gradle文件。事实证明,当我克隆这个git时,gradle正在运行,它从我的构建中删除了一行。Gradle (app)文件。

dependencies {
     provided files(providedFiles)

显然,这里的问题是将它添加回来并与gradle重新同步。

Be aware that the name of files and specially folders can result in this error. For instance, if you have a folder "Helpers" and the package for files in this folder is "com.whatever.helpers" it won't result in any compilation error but will cause the Android studio fail to load the symbols in that folder. One typical reason for that is when you name a folder with first capital letter, commit it on Git and later change the folder name to all lower case. The Git system won't recognize the change resulting in a discrepancy between the local and remote repositories that only the new repository clones will be affect by.

在我的多模块项目中,问题在于“com.android”的版本。支持:appcompat-v7”在模块A是“22.0.0”,但在B -“22.2.0”。 解决方案:确保 1. 模块之间的公共库版本相同。 2. 每个模块编译时都没有任何错误(尝试从CLI构建每个模块)。