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

无法解析符号“AppCompatActivity”

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


当前回答

你可以使用新的appcompat-v7:22.1.+ 只要把这个添加到你的gradle:

编译“com.android.support: appcompat-v7:22.1.1”

其他回答

我解决了这个问题:

进口androidx.appcompat.app.AppCompatActivity;

在主。java文件的“import”区域。这对我很管用。

希望能有所帮助!

如果其他方法都失败了,请确保添加了import语句。我已经删除了它,因为它显示错误,忘记把它添加回来,并尝试其他一切来修复:

进口android.support.v7.app.AppCompatActivity;

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

除了其他答案,在设置中添加下面的dependencyresoltionmanagement。Gradle解决了这个问题。

dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
    }
}

注意:我正在将旧的android项目迁移到AndroidX。在执行所有强制步骤后,此问题已结束,无法解析符号“AppCompatActivity”。在尝试了这里提到的所有其他解决方案后,问题仍未解决。当检查设置。Gradle和添加上面的代码解决了这个问题。

这是我在某处找到的救生代码(对不起,不记得起源)。添加它来构建。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'
        }
    }
}