我刚刚尝试使用Android Studio。我已经创建了空白项目,并试图创建扩展AppCompatActivity的活动。不幸的是,Android Studio“说”它
无法解析符号“AppCompatActivity”
我已经编译了“com.android.support:appcompat-v7 . 22.0”。在我的“应用程序”模块的依赖列表和重建项目几次。然而,我只能使用ActionBarActivity。我做错了什么?
我刚刚尝试使用Android Studio。我已经创建了空白项目,并试图创建扩展AppCompatActivity的活动。不幸的是,Android Studio“说”它
无法解析符号“AppCompatActivity”
我已经编译了“com.android.support:appcompat-v7 . 22.0”。在我的“应用程序”模块的依赖列表和重建项目几次。然而,我只能使用ActionBarActivity。我做错了什么?
今天(4月22日)你可以使用新的AppCompatActivity和支持库v 22.1.0一起发布。
只需更改依赖项:
compile "com.android.support:appcompat-v7:22.1.0"
在这里你可以找到关于这个新类的更多信息。
你可以使用新的appcompat-v7:22.1.+ 只要把这个添加到你的gradle:
编译“com.android.support: appcompat-v7:22.1.1”
这里是对其他答案的一点补充,适用于在使用正确的lib版本和正确的类时遇到相同错误的任何人。
当我升级到
appcompat-v7:22.1.0
其中ActionBarActivity已弃用,空和appcompatactivity是要走的路,由于在Android工作室的一些故障,它没有很好地拾取版本变化。
例如,即使Gradle运行时没有错误,IDE本身也一直在说 无法解析符号“AppCompatActivity”(它也不能通过Ctrl+N搜索)
我查看了.idea/libraries文件夹,注意到没有适合lib新版本的元文件。
因此,使用旧的可靠的File->Invalidate Caches/Restart就可以了。当你觉得Android Studio有什么神奇的错误时,总是尝试这个方法。 然后禁用离线模式和同步。
我在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
希望这对你有所帮助
我将告诉你我是如何在eclipse中解决这个问题的。 从这个链接下载zip文件。https://github.com/dandar3/android-support-v7-appcompat然后解压这个文件,打开项目,在lib文件夹中你会看到一个名为“android-support-v7-appcompat”的jar文件,将这个jar文件添加到你的项目中。这是它。
升级到最新的支持库后,我不得不升级到最新的Android studio(测试版)版本和gradle版本,然后IDE才能再次识别AppCompatActivity(无效缓存和重新启动没有做到这一点)
在将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包装器(推荐)解决了这个问题。 可能只要指向新的本地分销地点也可以。
对我来说,当我更新appcompact v7到最新的时候,这个问题解决了。
编译“com.android.support: appcompat-v7:25.3.0”
希望能有所帮助…:)
我把它修好了。gradle文件和appcompat依赖文件,比如编译'com.android.support:appcompat-v7:XX.X.X'
将其更改为编译'com.android.support:appcompat-v7:XX.X.+'
然后点击“同步”。如果代码中的其他内容都是正确的,那么所有的红色曲线都应该消失。
在项目build .gradle中添加此依赖项。
遵循下面的例子。
dependencies {
compile 'com.android.support:appcompat-v7:22.1.0'
}
所以我的同事推动了他们当地的。它破坏了一切。我复制了我的sdk路径从另一个应用程序,并做:
File -> Sync Project with Gradle Files
你只需要做一些改变在你的Gradle应用程序文件添加一些依赖
编译”com.android.support: appcompat-v7: XX: YY: ZZ”
而XX:YY:ZZ是你在gradle文件中使用的版本代码,否则如果你将这个版本设置得比你正在使用的版本低或高,那么你的应用程序就会面临一些问题,比如它有时会崩溃
对我来说,没有一个解决办法。但是我发现所有的支持库在我的外部库中都不见了。在其他项目中,AppCompatActivity问题得到了解决。
对我来说,创建一个新项目并将旧src文件夹中的所有东西复制到新项目中是有效的。
我不知道确切的原因,但如果没有效果,这可能是最后的可能性。如果有人和我有同样的"麻烦"
如果通过gradle file / Invalidate caches和其他IDE工具的软方法不起作用,请使用硬方法:
退出Android Studio 在项目中导航到.idea文件夹 只需重命名libraries文件夹 重新启动Android Studio。现在它应该重新创建libraries文件夹并重新工作。
这对我很管用
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
沙赫巴兹·阿里证实,这也行得通
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上运行
我刚把我的android studio从2.3.2版本升级到3.1.2版本。这个错误就发生了。
我清理项目,重建项目,无效缓存/重新启动,但什么都不工作。
我通过更新appcompat库来解决这个错误
编译“com.android.support: appcompat-v7:23.4.0”
to
编译“com.android.support: appcompat-v7:25.1.1”
在应用程序构建中。gradle文件。
尝试温和的方法行不通,那就用强硬的方法吧: 退出当前Android Studio屏幕,转到项目的。idea文件夹,重命名库->lib_pre文件夹。
重新启动Android Studio。现在它将重新创建libraries文件夹并再次顺利工作。 Android Studio 3.1.3
下面这些都不能解决我的问题
重新启动Android 文件>>与Gradle文件同步项目 建立>>清洁项目 重建>>重建项目 >>文件无效缓存/重启
相反,我通过更新appcompat & design dependencies的版本到最新版本来解决这个问题 这样做:去建设。grade (Module:app) >> dependencies部分,然后在appcompat和design dependencies上按ALT + ENTER,然后选择在我的情况下显示的版本,如图所示,它是24.2.1
这太简单了。以下是你需要遵循的步骤
1-退出Android工作室。 2 .进入项目目录。 在我的情况下(F>Android->YourProjectName->.idea)。 4)删除。idea文件夹中的libraries文件夹。 5)-重新启动你的android工作室。 你的问题解决了。
我把我的Gradle 2.3.3更新到4.4,在AppCompatActivity和Cardview上得到了一个错误。我尝试了清洁项目和重建项目。它不会工作,然后我去项目文件夹-> .idea ->创建备份库文件夹并删除它->,然后重建项目,解决了我的问题。
这是我在某处找到的救生代码(对不起,不记得起源)。添加它来构建。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'
}
}
}
这真的很疯狂,我尝试了一切,与Gradle文件同步,无效并重新启动android工作室。问题仍然存在。最后一招是删除。idea/libraries文件夹,效果很好。
如果无效缓存没有帮助,只需关闭项目,然后重新打开它。步骤:
文件>关闭项目 从启动项目列表中删除该项目 关闭Android Studio Open Android Studio 用这个项目打开现有的项目
无法解决符号AppCompatActivity问题。
执行“简单步骤”解决问题。
i)退出Android工作室。
ii)进入您的项目目录。
iii)在你的项目目录中找到。idea文件夹。
iv)删除。idea文件夹。
v)重新启动android studio。
vi)问题将得到解决。
让我们一步一步来:首先通过使用清洁项目
构建——>清洁
如果这没有帮助,那么使用第二步
文件>缓存失效/重启……
但真正的问题开始时,所有上述选项都不起作用,所以使用您的最终解决方案是关闭项目,并进入项目位置目录和删除
.idea
您现在可以再次打开您的项目。
如果其他方法都失败了,请确保添加了import语句。我已经删除了它,因为它显示错误,忘记把它添加回来,并尝试其他一切来修复:
进口android.support.v7.app.AppCompatActivity;
在尝试了所有解决方案后,我意识到我所从事的项目之前使用的是最新的Android Studio,当时是3.2,而我目前使用的pc在更新Android Studio后运行的是2.2,这似乎完全解决了我的问题。
解决方案:Android Studio ->检查更新,然后安装最新版本
当我将firebase添加到项目中,所有依赖项更新到API 28的最新版本时,错误出现了,尽管我的谷歌服务使用的是4.1.0版本。
当我更新到4.2.0时,我删除了这个错误。
出现这种情况的原因如下:
你没有安装SDK API(这是我的问题) 你的项目/Android Studio不知道需要的文件在哪里 您的项目引用了不支持AppCompatActivity的过时编译版本 有个错别字
可能的解决方式:
Check your .gradle file to make sure you’re not referencing an outdated version. AppCompatActivity was added in version 25.1.0 and belongs to Maven artifact com.android.support:appcompat-v7:28.0.0-alpha1, so do not use any version earlier than this. In your build.gradle (Module: app) file you should have the dependency listed: dependencies { compile 'com.android.support:appcompat-v7:25.1.0' } You may be using a different version, but just make sure you have listed the dependency. Open the SDK manager and download every API 7 or newer. If you were missing the needed API it will fix that issue, and downloading all the newer API’s can save you some hassle later on as well. Check for typos in your import statement. Make sure it doesn’t say “AppCompactActivity” instead of “AppCompatActivity”. Resync your project (File >Sync project with Gradle files) Rebuild your project (Build >rebuild) Clean your project (Build >clean project) Close and restart Android Studio Update Android Studio Regenerate your libraries folder – In Android Studio, view your files in project view. Find the folder YourProjectName >.idea >libraries. Rename the folder to “libraries_delete_me”. Close and reopen Android Studio. Open your project again and the libraries folder should be regenerated with all of the files; you can now delete the “libraries_delete_me” folder.
我解决了这个问题:
进口androidx.appcompat.app.AppCompatActivity;
在主。java文件的“import”区域。这对我很管用。
希望能有所帮助!
当你在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
除了其他答案,在设置中添加下面的dependencyresoltionmanagement。Gradle解决了这个问题。
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}
注意:我正在将旧的android项目迁移到AndroidX。在执行所有强制步骤后,此问题已结束,无法解析符号“AppCompatActivity”。在尝试了这里提到的所有其他解决方案后,问题仍未解决。当检查设置。Gradle和添加上面的代码解决了这个问题。
升级你的gradle版本来解决这个问题
转到你的项目级别build.gradle
如果您使用的是旧版本的gradle,请升级到最新版本
classpath 'com.android.tools.build:gradle:4.0.2'
gradle-wrapper.properties
更改distributionUrl为最新版本
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-bin.zip