Cannot resolve symbol 'v7' 오류 해결

원종인·2022년 6월 1일
0

안드로이드 스튜디오를 사용하다가 다른 사람의 코드를 사용할 때 은근 자주 생기는 오류가 Cannot resolve symbol 'v7' 이 오류인것 같다. 드럽게 많이 생기는데, 맨날 해결법 찾아보면 꼭 캐시 정리하고 build 다시 해보라는 방법 뿐이다. 애초에 그 방법들은 다 써봤으니까 찾으러 다니는 건데 참 막막한 방법들이다. 그런데 v7에 대해서는 stack overflow에 정확한 대처법이 나와있어서 여기에 기록해 둔다.

https://stackoverflow.com/questions/30803405/cannot-resolve-symbol-appcompatactivity-support-v7-libraries-arent-recognized

이 페이지에 들어가면 어떻게 해결하라고 자세하게 나와있다.

If you use androidX instead of android, you need change

import android.support.v7.app.AppCompatActivity;

to

import androidx.appcompat.app.AppCompatActivity;

and change

<android.support.constraint.ConstraintLayout>

to

<androidx.constraintlayout.widget.ConstraintLayout>

이렇게 하라고 나와있다. 우선 아래 부분은 build.gradle app 부분에서 implementation을 바꾸라는 건데 만약 안드로이드 스튜디오 최신판을 쓴다면 애초에 아래 부분으로 되어있을 테니 건드릴 필요는 없다.
그럼 위의 부분만 바꾸면 되는데 그냥 import 되어있는 거를 아래로 바꾸면 된다는 것이다. 엄청 간단한 방법인데, 한글 블로그에서 찾아보면 위의 방법들이 없는 것 같아서 이렇게 적어둔다.

import android.support.v7.app.ActionBarActivity

추가로 진짜 옛날 코드 보면 이런 코드 보이는데, 이것도

import androidx.appcompat.app.AppCompatActivity;

이걸로 수정해주면 된다. 그런데 그런 코드들은 보통 extends ActionVarActivity로 되어 있을 것이므로 이것도 extends AppCompatActivity로 바꿔준다.

profile
아직 대학생입니다

0개의 댓글