[컴][자바][코틀린] 코틀린으로 안드로이드 앱 작성시 java.lang.NoSuchFieldError



if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)


이 코드가 먹히지 않는다. 롤리팝 이하 버전에서는 아래와 같은 exception 이 발생한다.
java.lang.NoSuchFieldError: android.os.Build$VERSION_CODES.LOLLIPOP

이유는 확실하지 않지만, 컴파일러 잘못이라 추측된다.
확실치 않은 것은 kotlin 을 사용해서 인지, 원래 android java 에서도 발생하는 것인지 불문명하다.

이런 경우를 위해서 version code 는 숫자로 넣어주자. 개인적으로 새롭게 static(companion object) 을 만들어서 사용하고 있다.

아래 코드도 참고하자.



댓글 없음:

댓글 쓰기