TroubleShooting/Android Issue
[Android, Concept] Sdkversion (compile, min, max, target, buildtoolsversion)
JMcunst
2021. 5. 8. 11:23
728x90
compileSdkVersion
- gradle에 컴파일 할 버전 알려준다.
- 컴파일 시에만 적용. runtime에 영향 X
- 항상 최신 버전의 SDK로 설정 권장.
- import문으로 참조되는 클래스나 메소드를 찾을 때 참조한다.
minSdkVersion
- 앱이 실행될 수 있는 최소한의 API 버전.
- Google Play에서 사용자의 기기에 앱이 설치될 수 있을지 결정한다.
- minSdkVersion보다 높은 API를 사용하면 안된다.
- Support Library나 Google Play Service는 자체 minSdkVersion을 가지므로 이중 가장 높은 버전 이상으로 맞춰야 한다.
maxSdkVersion
- 앱이 실행될 수 있는 최대한의 API 버전.
- [minSdkVersion ~ maxSdkVersion] 사이의 디바이스에 인스톨 및 실행이 가능.
- 향후 API가 어떻게 바뀔지 예측할 수 없으므로 앱을 개발하는 시점에서는 maxSdkVersion을 알 수 없다.
- 일시적으로 사용.
targetSdkVersion
- [minSdkVersion ~ maxSdkVersion] 사이에서 지원.
- 실제 컴파일시에는 관여하지 않으며, 실제 빌드시 버전을 낮추어도 원하는 클래스의 메소드를 컴파일 할 수 있다.
- 안드로이드가 상위 호환성을 제공하게 함.
buildToolVersion
- build 툴의 버전. (=사용할 컴파일러 버전)
- File-Project Structure로 buildToolVersion 추가 가능.
- 안드로이드 3.0 이후부터는 명시하지 않아도 동작.
728x90