我刚刚尝试使用Android Studio。我已经创建了空白项目,并试图创建扩展AppCompatActivity的活动。不幸的是,Android Studio“说”它

无法解析符号“AppCompatActivity”

我已经编译了“com.android.support:appcompat-v7 . 22.0”。在我的“应用程序”模块的依赖列表和重建项目几次。然而,我只能使用ActionBarActivity。我做错了什么?


当前回答

我在Mac OS X Yosemite Machine上开发Android SDK 23时遇到了同样的问题。原来我没有Java SDK 7。

一旦我安装了Java SDK 7,并将SDK从Android Studio指向新的SDK,一切都很顺利。

以下是我遵循的步骤:

1)关闭Android SDK

2)从http://www.oracle.com/technetwork/java/javase/downloads/index.html安装Java SDK for Mac OS X

3)启动Android SDK,通过到文件->项目结构-> JDK位置,将本项目的SDK指向新的1.7 Java SDK

4)重启Android Studio

希望这对你有所帮助

其他回答

当我将firebase添加到项目中,所有依赖项更新到API 28的最新版本时,错误出现了,尽管我的谷歌服务使用的是4.1.0版本。

当我更新到4.2.0时,我删除了这个错误。

在将Android Studio从2.2.3更新到2.3,将Android Gradle插件更新到2.3.0,并将Gradle更新到3.3之后,我得到了AppCompatActivity和许多其他类和方法的Cannot resolve符号错误。

File -> Invalidate Caches / Restart没有解决问题。

首选项->构建,执行,部署-> Gradle显示使用本地Gradle分布选择与Gradle home: /Applications/Android Studio.app/Contents/ Gradle / Gradle -2.14.1和警告显示Gradle位置是不正确的。

通过选择使用默认gradle包装器(推荐)解决了这个问题。 可能只要指向新的本地分销地点也可以。

这太简单了。以下是你需要遵循的步骤

1-退出Android工作室。 2 .进入项目目录。 在我的情况下(F>Android->YourProjectName->.idea)。 4)删除。idea文件夹中的libraries文件夹。 5)-重新启动你的android工作室。 你的问题解决了。

当你在Gradle中添加AndroidX支持时。属性文件。

android.useAndroidX=true
android.enableJetifier=true

如果你使用的Gradle版本大于3.2,传统的Appcompat依赖如。

implementation 'com.android.support:appcompat-v7:27.1.1

不会工作。 将此依赖替换为:

implementation 'androidx.appcompat:appcompat:1.1.0'

此外,在你的类文件中修改AppCompatActivity的导入:

import android.support.v7.app.AppCompatActivity;

:

import androidx.appcompat.app.AppCompatActivity;

Done

这是我在某处找到的救生代码(对不起,不记得起源)。添加它来构建。gradle(模块:应用程序)。您可以将版本替换为相关的版本。

configurations.all {

    resolutionStrategy.eachDependency { DependencyResolveDetails details -
        def requested = details.requested

 if (requested.group == 'com.android.support') {

            if (!requested.name.startsWith("multidex")) {
                details.useVersion '27.1.1'
            }
        } else if (requested.group == "com.google.android.gms") {
            details.useVersion '15.0.0'
        } else if (requested.group == "com.google.firebase") {
            details.useVersion '15.0.0'
        }
    }
}