'AppCompatActivity'기호를 해결할 수 없습니다


212

방금 Android Studio를 사용하려고했습니다. 빈 프로젝트를 만들고 Activity확장하는 을 만들려고했습니다 AppCompatActivity. 불행한 안드로이드 스튜디오는 "그것"

'AppCompatActivity'기호를 해결할 수 없습니다

내가 가진 compile "com.android.support:appcompat-v7:22.0.+"내 "응용 프로그램"모듈과 재건 프로젝트 몇 차례의 의존성 목록에. 그러나 나는 만 사용할 수 있습니다 ActionBarActivity. 내가 뭘 잘못하고 있죠?


올바른 빌드 버전을 사용하고 있습니까? SDK가 최신 버전입니까?
유령 이야기

5
@Lingviston 올바른 버전을 사용하고 있지 않습니다. 당신이 사용해야합니다com.android.support:appcompat-v7:22.1.0
damson

2
당시에는 그런 버전이 없었습니다.
Lingviston

그러나 지금 존재하며 문제를 해결합니다 :)
JY2k

답변:


350

올바른 lib 버전과 올바른 클래스를 사용하는 동안 동일한 오류가있는 사람을 위해 여기에 다른 답변이 약간 추가되었습니다.

내가 업그레이드했을 때

appcompat-v7:22.1.0

어떤에서 ActionBarActivity사용되지 않는 빈되고 AppCompatActivty인해 안드로이드 Studio에서 일부 결함에, 길을 가야하는 것입니다, 그것은 아주 버전 변화를 선택하지 않았다.

즉, Gradle이 오류없이 실행되었지만 IDE 자체가 계속 말하고 있습니다 Cannot resolve symbol 'AppCompatActivity'( Ctrl+N검색을 통해서도 사용할 수 없음 )

.idea/libraries폴더를 살펴보고 새 버전의 lib에 적합한 메타 파일이 없다는 것을 알았습니다.

따라서 이전의 신뢰할 수있는 File-> Invalidate Caches / Restart를 사용 하여 트릭을 수행했습니다. Android Studio에서 뭔가 마술처럼 잘못되었다고 느낄 때 항상 이것을 시도하십시오. 그런 다음 오프라인 모드를 비활성화하고 동기화하십시오.


2
appcompat를 업그레이드 할 때마다 많은 문제가 발생합니다.
3c71

나에게 Android Studio 2.0으로 업데이트 할 때이 오류가 발생했습니다-위에서 설명한대로 캐시 지우기 및 다시 시작이 완벽하게 작동했습니다!
ColossalChris

나는 compile 'com.android.support:appcompat-v7:23.3.0'이미 내 build.gradle ...하지만 여전히 오류가 발생
dsdsdsdsd

3
:이 제대로 작동되지 않으면 나를 위해 일한이 하나의 시도 stackoverflow.com/a/36641765/3758439
조지

IntelliJ IDE에서도 동일합니다.
A-Sharabiani

163

gradle 파일 / "Invalidate caches"및 기타 IDE 도구를 통한 소프트 메소드가 작동하지 않으면 어려운 방법을 사용하십시오.

  1. Android Studio 종료
  2. 프로젝트에서 .idea폴더로 이동
  3. libraries폴더 이름 바꾸기
  4. 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

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에서 작동합니다.


수정을 위해 타이! 또한 모든 사용자가 PC 버전 또는 iOS 버전의 Android Studio를 사용하고 있는지 알고 싶습니다. iOS에서 이러한 문제가 없었던 개발자 친구가 있습니다. PC에서 많은 문제가있었습니다. 캐시를 정리 / 재 구축 / 무효화하려고 몇 번 시도했는지 잘 모르겠습니다.

Shahbaz Ali와 저는 리눅스 버전을 사용했습니다. moujib은이 솔루션이 3.2.1에서 작동한다고 언급했습니다
DBX12

70

오늘 (4 월 22 일) AppCompatActivity지원 라이브러리 v 22.1.0과 함께 릴리스 된 새로운 기능을 사용할 수 있습니다 .

의존성을 변경하십시오.

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

여기이 새로운 클래스에 대한 자세한 정보가 있습니다.


7
흠 나는 더 높은 버전을 사용하지만 여전히 문제가 발생하고있어compile 'com.android.support:appcompat-v7:23.1.1'
behelit

31

너무 간단합니다. 수행해야 할 단계는 다음과 같습니다.

1-Android 스튜디오를 종료하십시오.

2- 프로젝트 디렉토리로 이동하십시오.

내 경우에는 이와 같은 3- 뭔가 (F> Android-> YourProjectName->. idea).

4)-.idea 폴더에있는 라이브러리 폴더를 삭제하십시오.

5)-안드로이드 스튜디오를 다시 시작하십시오. 문제가 해결되었습니다.


뭔가 잘못 될 경우를 대비하여 폴더를 삭제하지 않습니다. 간단히 이름을 바꾸면 충분합니다. 최악의 경우 라이브러리 폴더가 재생성되지 않으면 "라이브러리"폴더의 원래 이름으로 되돌아 가서 복원 할 수 있습니다. 모든 것이 제대로 작동하면 이름을 바꾼 폴더로 돌아가서 삭제할 수 있습니다. 스튜디오가 손상된 경우 폴더를 재생성하지 않을 수 있습니다. 파일을 삭제할 때 항상주의하십시오.

28

build.gradle파일로 이동하여 appcompat컴파일과 같은 종속성으로 수정했습니다.'com.android.support:appcompat-v7:XX.X.X'

컴파일하도록 변경했습니다 'com.android.support:appcompat-v7:XX.X.+'

그런 다음 동기화를 클릭하십시오. 코드의 다른 모든 것이 정확하면 모든 빨간색 구불 구불 한 줄이 가야합니다.


7
+1, OMG 이것은 나를 위해 일했습니다. :) BTW는 동일한 릴리스의 새 버전이 사용 가능한 경우 Hey Gradle에+ 대한 표시입니다 . 내가 사용하던 지금이 트릭을 않았다 비록 AS는 경고 나에게주는 : 피를 버전 번호에 +를 사용하여; 예측 불가능하고 반복 불가능한 빌드로 이어질 수 있음 (com.android.support:appcompat-v7:25.3.+)com.android.support:appcompat-v7:25.3.1com.android.support:appcompat-v7:25.3.+
fWd82

13

오타도 확인하십시오 .AppCompatActivity 대신 실제로 AppCompactActivity를 입력했을 때 솔루션을 찾는 데 하루 종일 낭비했습니다.


13

내가 가지고 Cannot resolve symbol2.3.0에 플러그인 안드로이드 Gradle을 업데이트, 및 3.3 Gradle을 업데이트, 2.2.3에서 2.3로 안드로이드 스튜디오를 업데이트 한 후 AppCompatActivity 많은 다른 클래스 및 메소드에 대한 오류입니다.

File -> Invalidate Caches / Restart 문제를 해결하지 못했습니다.

Preferences -> Build, Execution, Deployment -> GradleUse local gradle distributionGradle 홈 (/ Applications / Android Studio.app/Contents/gradle/gradle-2.14.1) 에서 선택된 것으로 나타 났 으며 gradle 위치가 잘못되었다는 경고가 표시되었습니다 .

을 선택하여 문제를 해결했습니다 Use default gradle wrapper (recommended).
아마도 새로운 지역 배포 위치를 가리키는 것만으로도 효과가 있습니다.


11

기호 AppCompatActivity 문제를 해결할 수 없습니다.

간단한 단계를 수행하여 문제를 해결하십시오.

i) Android 스튜디오를 종료하십시오.

ii) 프로젝트 디렉토리로 이동하십시오.

iii) 프로젝트 디렉토리에서 .idea 폴더를 찾으십시오 .

iv) .idea 폴더를 삭제 하십시오 .

v) 안드로이드 스튜디오를 다시 시작하십시오.

vi) 문제가 해결 될 것입니다.


.idea 폴더로 이동하여 "libbraries"폴더의 이름을 다른 것으로 바꾸면 트릭도 잘 작동합니다. 무언가 잘못 되었다면, 돌아가서 라이브러리 폴더의 이름을 원래 이름으로 바꾸고 다른 .idea 폴더를 복원하는 대신 다른 것을 시도하면됩니다.

8

이 시도. Android Studio에서는 build.gradle에 종속성을 넣은 후 빌드-> 프로젝트 정리로 이동하십시오.

그것은 나를 위해 일했다.


7

정말 미쳤습니다. 모든 것을 시도하고 Gradle 파일과 동기화하고 무효화하고 안드로이드 스튜디오를 다시 시작했습니다. 여전히 문제가 지속되었습니다. 마지막 수단은 .idea / libraries 폴더를 삭제 하고 매력으로 작동했습니다.


6

새로운 AppCompatActivity appcompat-v7 : 22.1을 사용할 수 있습니다. + 이것을 gradle에 추가하십시오.

'com.android.support:appcompat-v7:22.1.1'컴파일


6

나를 위해 appcompact v7을 최신 버전으로 업데이트하면 문제가 해결되었습니다.

'com.android.support:appcompat-v7:25.3.0'컴파일

그것이 도움이되기를 바랍니다 :)


6

그래서 제 동료 local.properties는 모든 것을 파산했습니다. 다른 앱에서 SDK 경로를 복사하여 다음을 수행했습니다.

File -> Sync Project with Gradle Files

5

Mac OS X Yosemite Machine에서 개발하는 동안 Android SDK 23에서도 이와 동일한 문제가 발생했습니다. Java SDK 7이없는 것으로 나타났습니다.

Java SDK 7을 설치하고 SDK를 Android Studio에서 새 SDK로 지정하면 모든 것이 효과적이었습니다.

내가 수행 한 단계는 다음과 같습니다.

1) 안드로이드 SDK 종료

2) http://www.oracle.com/technetwork/java/javase/downloads/index.html 에서 Mac OS X 용 Java SDK를 설치 하십시오.

3) Android SDK를 시작하고 파일-> 프로젝트 구조-> JDK 위치로 이동 하여이 프로젝트의 SDK를 새로운 1.7 Java SDK로 지정하십시오.

4) Android Studio를 다시 시작하십시오.

이 도움을 바랍니다


3

Alt+ 를 누르 Enter거나 가져 오기를 추가해야합니다.

import android.support.v7.app.AppCompatActivity; 

3

아래의 어느 것도 내 문제를 해결하지 못했습니다.

  • 안드로이드를 다시 시작
  • 파일 >> Gradle 파일과 동기화 프로젝트
  • 빌드 >> 클린 프로젝트
  • 빌드 >> 프로젝트 재 구축
  • 파일 >> 캐시 무효화 / 재시작

대신, 내가 그렇게 할 수있는 최신 버전으로 APPCOMPAT 및 디자인 의존성의 버전을 업데이트하여 그것을 해결 : 이동에 build.grade (모듈 : 응용 프로그램) >> 섹션을 종속성 다음 공격 ALT + Enter를 선택한 다음 모두 APPCOMPAT 및 디자인 종속성 필자의 경우 표시된 버전은 그림과 같이 24.2.1입니다. 여기에 이미지 설명을 입력하십시오


3

Gradle 2.3.3을 4.4로 업데이트하고 AppCompatActivity 및 Cardview에 오류가 발생했습니다. 깨끗한 프로젝트로 시도하고 프로젝트를 다시 작성하십시오. 작동하지 않으면 프로젝트 폴더 -> .idea- > 라이브러리 폴더 백업 생성 및 제거-> 프로젝트다시 빌드 하여 문제를 해결하십시오.


3

단계별로 진행할 수 있습니다.

빌드-> 청결

이것이 도움이되지 않으면 두 번째 단계를 사용하십시오.

파일> 잘못된 캐시 / 다시 시작 ...

그러나 실제 문제는 위의 모든 옵션이 작동하지 않으면 시작되므로 궁극적 인 솔루션을 사용하면 프로젝트를 닫고 프로젝트 위치 디렉토리로 이동하여 삭제하는 것입니다

.생각

이제 프로젝트를 다시 열 수 있습니다.


2

최신 지원 라이브러리로 업그레이드 한 후 IDE가 AppCompatActivity를 다시 인식하기 전에 최신 Android 스튜디오 (베타) 버전 및 gradle 버전으로 업그레이드해야했습니다 (캐시 무효화 및 재시작으로 트릭을 수행하지 못했습니다)


2

프로젝트 빌드 .gradle에서이 종속성을 추가하십시오.

아래 예를 따르십시오.

dependencies {

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

수업을 사용할 :22.0.0수 없습니다 AppCompatActivity. 적어도로 ​​설정해야합니다 22.1.0. 감사.
haxpor 2019

2

쉬운 방법

  • 앱 수준을 열고 appcompact-v7 종속성 및 동기화를 build.gradle제거하십시오 .
  • 종속성을 다시 추가하고 동기화하십시오.

오류가 발생했습니다!

전에

전에

후


2

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;

끝난


1

의존성을 추가하여 Gradle 앱 파일을 약간 변경하면됩니다.

"com.android.support:appcompat-v7:XX:YY:ZZ"컴파일

XX : YY : ZZ는 gradle 파일에서 사용중인 버전 코드입니다. 그렇지 않으면이 버전을 사용중인 버전보다 낮거나 높게 설정하면 앱이 때때로 충돌하는 것처럼 몇 가지 문제에 직면하게됩니다


1

방금 안드로이드 스튜디오를 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 파일에서.


1

캐시 무효화가 도움이되지 않으면 프로젝트를 닫았다가 다시여십시오. 단계 :

  • 파일> 프로젝트 닫기
  • 시작 프로젝트 목록에서 프로젝트를 제거하십시오.
  • Android Studio 닫기
  • 안드로이드 스튜디오 열기
  • 이 프로젝트로 기존 프로젝트 열기

0

나를 위해 Gradle 빌드 버전을 업데이트했을 때 문제가 해결되었습니다. 이유를 모르십니까?


0

이 문제를 어떻게 일식에서 해결했는지 알려 드리겠습니다. 이 링크에서 zip 파일을 다운로드하십시오. https://github.com/dandar3/android-support-v7-appcompat 그런 다음이 파일을 추출하고 프로젝트를 열면 lib 폴더에 "android-support-v7-appcompat"라는 하나의 jar 파일이 표시됩니다.이 jar 파일을 당신의 프로젝트. 그게 다야.여기에 이미지 설명을 입력하십시오


0

앱 레벨 gradle의 버전이 다를 수 있습니다. 한 번 확인한 다음 다시 빌드하십시오.


0

나를 위해 해결책 중 어느 것도 일하지 않았습니다. 그러나 지원 라이브러리의 모든 라이브러리가 외부 라이브러리에 없다는 것을 알았습니다. 그리고 다른 프로젝트에서는 AppCompatActivity가 문제없이 해결되었습니다.

나를 위해 새 프로젝트를 만들고 이전 src 폴더의 모든 내용을 새 프로젝트에 복사했습니다.

나는 왜 정확한지 모르겠지만 아무것도 작동하지 않으면 마지막 가능성 일 수 있습니다. 누군가가 나와 같은 문제를 겪고있는 것처럼 말입니다.


0

작동하지 않는 부드러운 방법을 시도하여 어려운 방법을 사용하십시오. 현재 Android Studio 화면 종료하고 프로젝트를 .idea 폴더로 이동하십시오. 라이브러리 이름 바꾸기-> lib_pre 폴더.

Android Studio를 다시 시작합니다. 이제 라이브러리 폴더를 다시 만들고 매끄럽게 다시 작동합니다. 안드로이드 스튜디오 3.1.3

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.