안드로이드

안드로이드 Hilt 사용시 java.lang.LinkageError: 에러

알통몬_ 2021. 6. 18. 10:39
반응형

java.lang.LinkageError: Method androidx.fragment.app.FragmentActivity kr.rowan.superbrain_b2b.ui.pack.cognition.category.memorypower.common.Hilt_FindWordFragment.getActivity() overrides final method in class Landroidx/fragment/app/Fragment; (declaration of 'kr.rowan.superbrain_b2b.ui.pack.cognition.category.memorypower.common.Hilt_FindWordFragment' appears in /data/app/~~uwhXcPthsKSRLzpjMoTyhQ==/kr.rowan.superbrain_b2b-eMPSv1fmf4zpqiEby7CByw==/base.apk!classes12.dex)

힐트를 사용할 때 이런 에러가 발생했는데요.

에러의 핵심 내용을 보면 getActivity()가 final 메소드인데 overrides 되었다는 의미였습니다.

문제가 발생한 이유는 제가 fragment 에서 변수이름을 activity로 사용해서 그런 것이었습니다.
코틀린 언어 특성상 변수를 만들면 get(), set() 자동생성되는데 Fragment의 getActivity와 겹쳐서 그런 것이었습니다.
변수 이름을 activity -> mActivity로 변경하여 문제 해결했습니다.

반응형