我刚刚尝试使用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。我做错了什么?
当前回答
在将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包装器(推荐)解决了这个问题。 可能只要指向新的本地分销地点也可以。
其他回答
除了其他答案,在设置中添加下面的dependencyresoltionmanagement。Gradle解决了这个问题。
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}
注意:我正在将旧的android项目迁移到AndroidX。在执行所有强制步骤后,此问题已结束,无法解析符号“AppCompatActivity”。在尝试了这里提到的所有其他解决方案后,问题仍未解决。当检查设置。Gradle和添加上面的代码解决了这个问题。
我在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
希望这对你有所帮助
下面这些都不能解决我的问题
重新启动Android 文件>>与Gradle文件同步项目 建立>>清洁项目 重建>>重建项目 >>文件无效缓存/重启
相反,我通过更新appcompat & design dependencies的版本到最新版本来解决这个问题 这样做:去建设。grade (Module:app) >> dependencies部分,然后在appcompat和design dependencies上按ALT + ENTER,然后选择在我的情况下显示的版本,如图所示,它是24.2.1
这是我在某处找到的救生代码(对不起,不记得起源)。添加它来构建。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'
}
}
}
你可以使用新的appcompat-v7:22.1.+ 只要把这个添加到你的gradle:
编译“com.android.support: appcompat-v7:22.1.1”