안드로이드(Android) 버전업이 되면서 요구 버전 오류 해결 |
개발환경 : window 7 64bit, Eclipse Kepler, Android 4.2.2 |
안드로이드버전업이 되면서 간혹 API 가 지원하는 함수 인데도
소스에서 에러가 나는 경우가 있다. 에러 내용이 대부분 숫자만 틀리지 아래와 같다.
Call requires api level 14 (current min is 7)
AnroidManifest.xml 로 가서 <uses-sdk> 의 minSdkVersion 값을 바꿔봐도
동일하게 난다. 그러다 다시 clean 하고 몇번 컴파일 하다 보면 되는 경우가 있다.
이럴때는 프로젝트 오른마우스 클릭후 Android Tool > Clear Lint Markers 실행한다.
Lint 란 툴에서 에러를 발생할 것 같은 코드에 flag 해주는 것을 말한다
안드로이드에서는 ADT(Android Development Toolkit) 이 강화되면서
에러가 아닌데도 표현하는 경우가 있다.
이럴 때 Clear Lint Markers 실행해서 모두 없애주면 된다. 그리고 Lint Error 속성정보에
체크 리스트가 있는데 그곳에 내용을 수정해서 미리 에러를 방지 할수도 있다.
하지만 귀찮다고 모두 무시하는 설정을 한다면 소스검증에 문제가 있을 수 있으니
설정은 신중하게 하는 것이 좋다.
또 다른 방법은 버전별로 호출 할수 있도록 Android 에서는 @TargetApi annotation 을
만들어 놓았다. 안드로이드는 버전별로 호출 가능한 API 데이터베이스를 가지고 있다.
이것을 기반으로 Lint 가 검사를 하는 것이다.
@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
'안드로이드 개발' 카테고리의 다른 글
안드로이드(Android) 에서 layout_gravity 와 gravity 속성차이 알아보기 (0) | 2013.10.03 |
---|---|
안드로이드(Android) 에서 프레임 애니메이션 만들기 (5) | 2013.09.30 |
안드로이드(Android) WIFI 와이파이 연결하기 (0) | 2013.09.27 |
안드로이드(Android) 개발시 invalid project description 에러 발생 (2) | 2013.09.23 |
안드로이드(Android) sdcard 에 파일이 안들어 갈 때 (0) | 2013.09.16 |
안드로이드(Android) Android Studio 새로운 버전으로 업데이트 하고자 할 때 (0) | 2013.09.14 |
안드로이드(android) SQLite 데이타 베이스 다루기 (11) | 2013.02.19 |
안드로이드(android) 내장, 외장 메모리 사용가능여부와 크기 알아오기 (1) | 2012.12.20 |