无法解析符号appcompatactivity-无法识别支持v7库?

qnzebej0  于 2021-07-14  发布在  Java
关注(0)|答案(26)|浏览(647)

我想弄明白为什么我的android工作室不能正确识别appcompatv7库。下面的import语句显示为灰色,并表示support.v7.app没有包。下面是我的活动文件:

import android.support.v7.app.AppCompatActivity;

public class XApplicationActivity extends AppCompatActivity

我的体格等级:

compile "com.android.support:appcompat-v7:22.0.0"
compile "com.android.support:support-annotations:$ANDROID_SUPPORT_VERSION"
compile "com.android.support:support-v4:$ANDROID_SUPPORT_VERSION"

我的项目设置:

minSdkVersion = 14
targetSdkVersion = 21
compileSdkVersion = 21
buildToolsVersion = "22.0.1"

所以我真的很困惑,为什么这仍然是给我的问题。我已经尝试过的事情:
清理/重建项目
使缓存失效并重新启动
检查了十亿次以确保安装了支持库(我绝对安装了最新的支持库和库)
有人知道有什么办法吗?这花了我很多时间,真的很令人沮丧。

izkcnapc

izkcnapc1#

最好的解决方案肯定是转到“文件”>“使缓存无效并重新启动”
然后在对话框菜单中。。。单击作废缓存并重新启动。等一分钟,或者不管需要多长时间来重置你的项目,那么你应该是好的。

我应该注意到,我还遇到了引用gradle中的compileonly库中的资源文件或“r”文件的问题(i、 e.compileonly library>res>referenced xml file)我停止在java代码中引用这个文件,它帮助了我。所以厌倦了你引用文件的地方。

bprjcwpo

bprjcwpo2#

Follow these steps:

File >> Invalidate Caches / Restart
Clean project
Finally go to build.gradle
And compileSdkVersion and targetSdkVersion lower version
If 
implementation 'com.android.support:appcompat-v7:29.0.0'
Convert this to 
implementation 'com.android.support:appcompat-v7:28.0.0'
hi3rlvi2

hi3rlvi23#

我刚刚评论了它,并使用了androidx,现在它的工作都很好!

import androidx.appcompat.app.AppCompatActivity;
// import android.support.v7.app.AppCompatActivity;
p8ekf7hl

p8ekf7hl4#

对我来说,以下代码运行良好:

import android.os.Bundle;

import androidx.appcompat.app.AppCompatActivity;

使用(xml文件):

androidx.constraintlayout.widget.ConstraintLayout xmlns:android="...."
fjaof16o

fjaof16o5#

包括导入androidx.appcompat.app.appcompat活动;在mainactivity.java中使用其他导入语句。这看起来像:

这解决了我的问题

ncgqoxb0

ncgqoxb06#

缓存失效后,从

import android.support.v7.app.AppCompatActivity;

import androidx.appcompat.app.AppCompatActivity;

为我工作。

xn1cxnb4

xn1cxnb47#

如果给定的解决方案不起作用,那么创建一个以“kotlin”为语言的新项目,即使您的工作是在java上。然后将新项目的“main”文件夹替换为旧项目的“main”文件夹。

rjee0c15

rjee0c158#

背景信息:
我的ide

Android Studio 3.1.3
Build #AI-173.4819257, built on June 4, 2018
JRE: 1.8.0_152-release-1024-b02 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 7 6.1

第一个解决方案:再次导入项目,不同意升级android gradle插件。
第二种解决方案:您的文件应该包含这些片段。
内部版本.gradle:

buildscript {
  repositories {
    jcenter()
    google()//this is important for gradle 4.1 and above
  }
  dependencies {
    classpath 'com.android.tools.build:gradle:3.1.3' //this android plugin for gradle requires gradle version 4.4 and above
  }
}
allprojects {
  //...
  repositories {
    jcenter()
    google()//This was not added by update IDE-wizard-button.
    //I need this when using the latest com.android.support:appcompat-v7:25.4.0 in app/build.gradle
  }
}

要么按照ide的建议将gradle版本升级到4.4,要么考虑在gradle/wrapper/gradle-wrapper.properties中使用这个版本

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

可选更改app/build.gradle中的buildtoolsversion:

android {
compileSdkVersion 25
buildToolsVersion '27.0.3'

app/build.gradle:注解掉依赖项,让构建失败(自动或触发)

dependencies {
//compile fileTree(dir: 'libs', include: ['*.jar'])
//compile 'com.android.support:appcompat-v7:25.1.0'
}

app/build.gradle:再次在依赖项中添加注解。有人建议将它们从编译改为实现,但目前这只是一个警告问题。

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:25.1.0'
}

项目重建后,导入语句不再灰显;尝试对类调用ctrl+h。但由于某些原因,这些类引用语句上的错误标记仍然存在。为了摆脱它们,我们需要隐藏并恢复项目树视图,或者关闭并重新打开项目。
最后就是这样了。
进一步阅读:
更新gradle
使用新的依赖项配置
如果你喜欢我的解决方案图片线索,你可以访问我的博客

rpppsulh

rpppsulh9#

删除项目中隐藏的.idea文件夹。转到系统中的项目,单击ctrl+h它将可见,然后将其删除。现在重启你的android工作室。我会解决的。对我有用。

x6492ojm

x6492ojm10#

问题可能是进口参考,
试着改变一下。发件人:

import android.support.v7.app.AppCompatActivity;

收件人:

import androidx.appcompat.app.AppCompatActivity;
py49o6xq

py49o6xq11#

androidx用户
将您的MinSDK版本更改为api级别21。
这样地 minSdkVersion 21 或者用 compileSdkVersion 28 也会改变 targetSdkVersiontargetSdkVersion 28 你会看到v7错误消失了。之后,如果您在创建工具栏或其他小部件时遇到问题。按alt+enter并为其创建方法。

ia2d9nvy

ia2d9nvy12#

文件->使缓存失效/重新启动对我有效。

cgh8pdjw

cgh8pdjw13#

我有这些设置
'gradle.properties' android.useAndroidX=true # Automatically convert third-party libraries to use AndroidX android.enableJetifier=true 最好使用androidx库。所以我将所有导入都改为androidx库并编译了项目。访问 http://developer.android.com/jetpack/androidx 供参考。

wfauudbj

wfauudbj14#

对我来说,即使升级到 appcompat-v7:22.1.0 ,其中 AppCompatActivty 是补充说,这个问题没有解决我,android工作室是给同样的问题
无法解析符号“appcompatactivity”
有时清除androidstudio缓存会有所帮助。
在androidstudio中,我刚刚清除了缓存并用以下选项重新启动--
文件->使缓存失效/重新启动

kse8i1jr

kse8i1jr15#

更换

import android.support.v7.app.AppCompatActivity;

使用import androidx.appcompat.app.appcompat活动

相关问题