ChatGPT解决这个技术问题 Extra ChatGPT

无法解析符号“AppCompatActivity”

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

无法解析符号“AppCompatActivity”

我的“应用程序”模块的依赖项列表中有 compile "com.android.support:appcompat-v7:22.0.+",并多次重建项目。但是我只能使用 ActionBarActivity。我究竟做错了什么?

您使用的是正确的构建版本吗?你的sdk是最新的吗?
@Lingviston 您没有使用正确的版本。您应该使用 com.android.support:appcompat-v7:22.1.0
嗯,那个时候没有这样的版本。
但是现在有了,它解决了问题:)

A
Akshu Gautam

对于在使用正确的 lib 版本和正确的类时遇到相同错误的任何人,这里对其他答案进行了一点补充。

当我升级到

appcompat-v7:22.1.0

其中 ActionBarActivity 已弃用且为空,而 AppCompatActivty 是可行的方法,由于 Android Studio 中的一些故障,它并没有完全适应版本更改。

即,即使 Gradle 运行时没有错误,IDE 本身也会一直显示 Cannot resolve symbol 'AppCompatActivity'(而且它也无法通过 Ctrl+N 搜索获得)

我查看了 .idea/libraries 文件夹,发现新版本的 lib 没有合适的元文件。

因此,使用旧可靠的 File->Invalidate Caches/Restart 就可以了。当您觉得 Android Studio 出了点问题时,请务必尝试此操作。然后禁用离线模式并同步。


对我也不起作用,每次升级 appcompat 时,都会遇到很多问题。
对我来说,更新到 Android Studio 2.0 时弹出此错误 - 如上所述清除缓存并重新启动效果很好!
我的 build.gradle 中已经有 compile 'com.android.support:appcompat-v7:23.3.0' ...但仍然收到错误
如果它不起作用,试试这个,对我有用:stackoverflow.com/a/36641765/3758439
在 IntelliJ IDE 中相同。
D
DBX12

如果通过 gradle file / "Invalidate caches" 和其他 IDE 工具的软方法不起作用,请使用硬方法:

退出 Android Studio 在你的项目中导航到 .idea 文件夹 只需重命名库文件夹 重启 Android Studio。它现在应该重新创建库文件夹并再次工作。

这对我有用

Android Studio 3.1.2
Build #AI-173.4720617, built on April 13, 2018
JRE: 1.8.0_152-release-1024-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.13.0-38-generic

Shahbaz Ali 已确认,它也适用于

Android Studio 3.1.3
Build #AI-173.4819257, built on June 4, 2018
JRE: 1.8.0_152-release-1024-b01 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Linux 4.13.0-38-generic

moujib 确认,它适用于 Android Studio 3.2.1


Ty 进行修复!另外,我想知道这里的每个用户是使用 PC 版还是 iOS 版的 Android Studio。我有一些开发者朋友在 iOS 上从来没有遇到过这些问题。我在PC上遇到了很多问题。不知道我尝试了多少次清理/重建/无效缓存...
我和 Shahbaz Ali 用的是 Linux 版本,moujib 只评论说这个解决方案在 3.2.1 有效
G
Gabriele Mariotti

今天(4 月 22 日)您可以使用随支持库 v 22.1.0 一起发布的新 AppCompatActivity

只需更改您的依赖项:

compile "com.android.support:appcompat-v7:22.1.0"

Here您可以找到有关此新课程的更多信息。


嗯,我正在使用更高版本,但仍然遇到问题 compile 'com.android.support:appcompat-v7:23.1.1'
C
Community

这太简单了。这是您需要遵循的步骤

1-退出安卓工作室。 2-转到您的项目目录。 3-在我的情况下是这样的(F>Android->YourProjectName->.idea)。 4)-删除 .idea 文件夹中的库文件夹。 5)-重启你的安卓工作室。你的问题就解决了。


如果出现严重错误,我永远不会删除该文件夹。只需重命名它就足够了。在最坏的情况下,库文件夹没有重新生成,您可以返回并恢复“库”文件夹的原始名称。知道一切正常后,您可以返回并删除您重命名的文件夹。如果您的工作室已损坏,它可能无法重新生成文件夹 - 删除文件时请务必小心。
这为我修好了。
删除library文件夹后,回到android studio。 “使用 Gradle 文件同步项目”
S
Siddhartha Chikatamalla

我通过转到 build.gradle 文件和依赖项 appcompat 来修复它,例如编译 'com.android.support:appcompat-v7:XX.X.X'

将其更改为编译 'com.android.support:appcompat-v7:XX.X.+'

然后点击同步。如果代码中的其他所有内容都正确,则所有红色波浪线都应该消失。


+1,天哪,这对我有用。 :) 顺便说一句,+ 标志是 Hey Gradle,如果同一版本的任何新版本可供您自己使用 :) 。我正在使用 com.android.support:appcompat-v7:25.3.1 现在这起到了作用:com.android.support:appcompat-v7:25.3.+ 虽然 AS 给了我警告:避免在版本号中使用 +;可能导致不可预测和不可重复的构建 (com.android.support:appcompat-v7:25.3.+)
V
Victor Michael

还要检查拼写错误,当我实际输入 AppCompactActivity 而不是 AppCompatActivity 时,我浪费了一整天的时间寻找解决方案


j
jk7

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

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

Preferences -> Build, Execution, Deployment -> Gradle 显示 Use local gradle distribution 已选择 Gradle 主页:/Applications/Android Studio.app/Contents/gradle/gradle-2.14.1 并显示警告,说明 gradle 位置不正确

通过选择 Use default gradle wrapper (recommended) 解决了问题。
可能只是指向新的本地分发位置也可以。


S
Sathish kumar T.M

无法解决符号 AppCompatActivity 问题。

执行简单步骤来解决问题。

i) 退出 Android 工作室。

ii) 转到您的项目目录。

iii) 在您的项目目录中找到 .idea 文件夹。

iv) 删除 .idea 文件夹。

v) 重启你的安卓工作室。

vi) 问题将得到解决。


如果您进入 .idea 文件夹并将“libraries”文件夹重命名为不同的名称,那么这个技巧也很有效。如果出现严重错误,您只需返回并将库文件夹重命名为其原始名称并尝试其他操作,而不是尝试恢复整个 .idea 文件夹。
M
Muhammad Etisam Zafar

当您在 Gradle.properties 文件中添加 AndroidX 支持时,例如

android.useAndroidX=true
android.enableJetifier=true

如果您使用大于 3.2 的 Gradle 版本,则传统的 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;

完毕


M
MobileAppDeveloper

尝试这个。在 Android Studio 中,将依赖项放入 build.gradle 后。转到构建 --> 清理项目。

它对我有用。


R
Raghav Sharma

那真是太疯狂了,我尝试了一切,与 Gradle 文件同步,无效并重新启动了 android studio。问题仍然存在。最后的手段是删除 .idea/libraries 文件夹,它起到了魅力。


S
Sergey Zabelnikov

您可以使用新的 AppCompatActivity appcompat-v7:22.1.+ 只需将其添加到您的 gradle 中:

编译'com.android.support:appcompat-v7:22.1.1'


N
Nihas Nizar

对我来说,当我将 appcompact v7 更新到最新版本时,问题就解决了。

编译'com.android.support:appcompat-v7:25.3.0'

希望能帮助到你...:)


S
Seabass77

所以我的同事推动了他们的 local.properties,这打破了一切。我从另一个应用程序复制了我的 sdk 路径并做了:

File -> Sync Project with Gradle Files

A
AsgharHussain

在 Mac OS X Yosemite 机器上开发时,我在使用 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 并将此项目的 SDK 指向新的 1.7 Java SDK,方法是转到文件 -> 项目结构 -> JDK 位置

4)重启Android Studio

希望这有帮助


S
Suragch

请记住按 Alt+Enter 或添加导入。

import android.support.v7.app.AppCompatActivity; 

Z
Zain

以下都没有解决我的问题

重启安卓

文件 >> 使用 Gradle 文件同步项目

构建 >> 清洁项目

构建 >> 重建项目

文件>>使缓存无效/重新启动

https://i.stack.imgur.com/AZbes.png


m
manojm

我将 Gradle 2.3.3 更新到 4.4,并在 AppCompatActivity 和 Cardview 上出现错误。我尝试使用干净的项目和重建项目。它不起作用,然后我转到项目文件夹 -> .idea -> 创建库文件夹的备份并将其删除 -> 然后重建项目解决了我的问题。


s
shashank chandak

让我们一步一步来:首先使用清理项目

构建->清理

如果这没有帮助,那么使用你的第二步

文件>使缓存无效/重新启动...

但真正的问题是当上述所有选项都不起作用时,所以使用您的最终解决方案是关闭项目并转到项目位置目录并删除

。主意

您现在可以再次打开您的项目。


C
Ciske

升级到最新的支持库后,我不得不升级到最新的 Android studio (beta) 版本和 gradle 版本,然后 IDE 才能再次识别 AppCompatActivity(使缓存无效并重新启动没有成功)


P
Pang

在项目构建 .gradle 中添加此依赖项。

请按照以下示例进行操作。

dependencies {

    compile 'com.android.support:appcompat-v7:22.1.0'
}

我使用 :22.0.0 并且找不到 AppCompatActivity 类。我必须至少将其设置为 22.1.0。谢谢。
C
Community

易道

打开应用级别 build.gradle 并删除 appcompact-v7 依赖项和同步。

再次添加依赖项并同步。

错误消失了!

https://i.stack.imgur.com/195Yi.png

https://i.stack.imgur.com/8cJ3Y.png


Z
Zain

我解决了它添加:

import androidx.appcompat.app.AppCompatActivity;

在主 .java 文件的“导入”区域中。它对我有用。

希望能帮助到你!


N
Nadeem Bhat

您只需通过添加一些依赖项来对 Gradle 应用程序文件进行一些更改

编译“com.android.support:appcompat-v7:XX:YY:ZZ”

而 XX:YY:ZZ 是您在 gradle 文件中使用的版本代码,否则如果您将此版本设置为低于或高于您正在使用的版本,那么您的应用将面临一些问题,例如有时会崩溃


m
mehmoodnisar125

我只是将我的 android studio 从 2.3.2 更新到 3.1.2 版本。并发生此错误。

我清理项目,重建项目,使缓存/重新启动无效,但没有任何效果。

我通过更新 appcompat 库来解决此错误

编译'com.android.support:appcompat-v7:23.4.0'

编译'com.android.support:appcompat-v7:25.1.1'

在应用程序 build.gradle 文件中。


N
Nguyen Minh Hien

如果无效缓存没有帮助,只需关闭项目然后重新打开它。脚步:

文件 > 关闭项目

将项目从启动项目列表中删除

关闭 Android Studio

打开安卓工作室

使用此项目打开现有项目


S
SendETHToThisAddress

发生这种情况是由于以下原因之一:

您没有安装 SDK API(这是我的问题) 您的项目/Android Studio 不知道所需文件在哪里 您的项目引用了不支持 AppCompatActivity 的过时编译版本 有错字

可能的解决方案:

检查您的 .gradle 文件以确保您没有引用过时的版本。 AppCompatActivity 是在 25.1.0 版本中添加的,属于 Maven 神器 com.android.support:appcompat-v7:28.0.0-alpha1,所以不要使用比这更早的任何版本。在您的 build.gradle (Module: app) 文件中,您应该列出依赖项: dependencies { compile 'com.android.support:appcompat-v7:25.1.0' } 您可能使用的是不同的版本,但请确保您已列出依赖项。打开 SDK 管理器并下载每个 API 7 或更高版本。如果您缺少所需的 API,它将解决该问题,并且下载所有较新的 API 也可以在以后为您节省一些麻烦。检查导入语句中的拼写错误。确保它没有说“AppCompactActivity”而不是“AppCompatActivity”。重新同步您的项目(文件 > 将项目与 Gradle 文件同步) 重建您的项目(Build >rebuild) 清理您的项目(Build >clean 项目) 关闭并重新启动 Android Studio 更新 Android Studio 重新生成您的库文件夹 - 在 Android Studio 中,查看您的文件项目视图。找到文件夹 YourProjectName >.idea >libraries。将文件夹重命名为“libraries_delete_me”。关闭并重新打开 Android Studio。再次打开您的项目,应使用所有文件重新生成库文件夹;您现在可以删除“libraries_delete_me”文件夹。


S
Srikar Reddy

对我来说,当我更新 Gradle 构建版本时,问题就解决了。不知道为什么?


D
Däñish Shärmà

https://i.stack.imgur.com/evMQD.jpg


K
Kamal

这可能是应用程序级别 gradle 中的版本差异检查一次然后重新构建