couldn't make a guess for (*BindingClass) 오류 해결

Donggi Hong·2023년 3월 10일
1
post-custom-banner
> couldn't make a guess for myapp.test.Application.BottomSheetBinding

오래 된 프로젝트를 보수하는 과정에서 위와 같은 에러가 반복적으로 발생하였습니다.

TargetSDK를 30이상으로 올리면서 android.synthetic 을 전부 제거하고,
dataBinding과 ViewBinding으로 리팩터링 시키는 과정에서 발생했습니다.

이유는 패키지명에 대문자가 들어가 있어서였습니다.

이미 배포하고 관리중인 앱이었기에 수정이 불가능 할 것 이라고 생각하였으나,

프로젝트의 패키지명을 변경하여도 gradle(app)의 applicationId만 그대로 유지한다면
배포하는데는 별 문제가 없다고 합니다.

다행이다...........

Manifest 내 Package가 Depracated 된 경우

수정 전

⬆ 수정 전 ⬆

수정 후

⬆ 수정 후 ⬆

Android Gradle Plugin 버전에 따라, manifest의 package가 deprecated 된 경우가 있습니다.
이 경우, 이를 대신하는 app수준의 gradle에서의 namespace에 있는 대문자를 제거해주면 됩니다. :)

Depracated 된 방법

수정 전

⬆ 수정 전 ⬆

수정 후

⬆ 수정 후 ⬆

구 버전의 Android Gradle Plugin을 사용하는 경우에는, manifest의 packeage 명에 있는 대문자를 제거해주면 됩니다.

profile
꿈 많은 응애 안드로이드 개발자
post-custom-banner

0개의 댓글