Facebook SDK 연동 후 'must use the exact same version specification' 경고 해결 방법 (appcompat 버전 충돌)
안드로이드 프로젝트에 Facebook SDK를 연동하는 과정에서, 다른 라이브러리, 특히 appcompat-v7
과 같은 안드로이드 Support 라이브러리와의 버전 불일치로 인해 빌드 시 경고나 오류가 발생하는 경우가 있습니다. 대표적인 경고 메시지가 바로 "All com.android.support libraries must use the exact same version specification" (모든 com.android.support 라이브러리는 정확히 동일한 버전 명시를 사용해야 합니다) 입니다.

경고 발생 원인
이 경고는 프로젝트 내에서 사용되는 여러 Support 라이브러리(예: appcompat-v7
, design
, recyclerview-v7
등)들이 서로 다른 버전을 참조하고 있을 때 발생합니다. Facebook SDK가 내부적으로 특정 버전의 Support 라이브러리를 사용하려 하는데, 이것이 프로젝트의 다른 부분에서 사용하는 버전과 충돌하는 것입니다. Gradle은 이러한 버전 불일치를 감지하고 개발자에게 알려줍니다.
해결 방법: Support Library 버전 통일하기
이 문제를 해결하는 가장 일반적인 방법은 프로젝트의 build.gradle (Module: app)
파일에서 모든 Support 라이브러리 관련 의존성 버전을 동일하게 맞춰주는 것입니다. Facebook SDK 연동 시 이 경고가 발생했다면, Facebook SDK가 의존하는 cardview-v7
이나 customtabs
라이브러리의 버전을 프로젝트의 주된 Support Library 버전(일반적으로 appcompat-v7
의 버전)과 일치시켜 명시적으로 추가해주면 해결될 수 있습니다.
예를 들어, 프로젝트에서 appcompat-v7
라이브러리를 27.0.2
버전으로 사용하고 있다면, 다음과 같이 cardview-v7
과 customtabs
라이브러리도 동일한 버전으로 추가합니다.
dependencies {
// ... 기존 의존성들 ...
implementation 'com.android.support:appcompat-v7:27.0.2' // 프로젝트의 주 Support Library 버전
// Facebook SDK 의존성
implementation 'com.facebook.android:facebook-android-sdk:[5,6)' // 예시 버전, 실제 사용하는 버전으로
// 버전 충돌 해결을 위해 명시적으로 추가 (appcompat-v7 버전과 동일하게)
implementation 'com.android.support:cardview-v7:27.0.2'
implementation 'com.android.support:customtabs:27.0.2'
// ... 기타 의존성들 ...
}
중요:
- 위 코드의
27.0.2
버전은 예시입니다. 실제로는 여러분의 프로젝트에서 사용 중인appcompat-v7
라이브러리의 버전과 동일하게 맞춰주어야 합니다. - 최신 안드로이드 스튜디오에서는
compile
대신implementation
또는api
키워드를 사용하는 것이 권장됩니다. 위 예시는implementation
을 사용했습니다. - 때로는
cardview-v7
이나customtabs
중 하나만 추가해도 경고가 사라지는 경우가 있지만, 두 라이브러리 모두 Facebook SDK와 관련될 수 있으므로, 문제가 지속된다면 둘 다 명시적으로 추가해 보는 것이 좋습니다.
의존성을 추가하거나 수정한 후에는 안드로이드 스튜디오 상단의 "Sync Now" 링크를 클릭하여 Gradle 프로젝트를 동기화해야 변경 사항이 적용됩니다.
결론
Facebook SDK를 비롯한 외부 라이브러리를 안드로이드 프로젝트에 추가할 때는 종종 기존 라이브러리와의 버전 충돌 문제가 발생할 수 있습니다. "must use the exact same version specification" 경고는 이러한 문제 중 하나이며, 관련된 Support 라이브러리들의 버전을 통일시켜 줌으로써 비교적 간단하게 해결할 수 있습니다. 이 팁이 Facebook SDK 연동 중 발생하는 버전 충돌 문제 해결에 도움이 되기를 바랍니다.
0 개의 댓글:
Post a Comment