[Android] Target SDK Version, Android 앱 호환성과 최신 기능 지원
Android 앱을 개발할 때, targetSdkVersion은 중요한 설정 중 하나입니다.
이 설정은 앱이 어떤 Android 버전에서 실행될 때, 해당 버전의 특성이나 새로운 기능을 사용할지 말지를 결정하는 역할을 합니다.
targetSdkVersion을 설정하면 앱의 호환성뿐만 아니라, 최신 Android 기능을 적절히 활용할 수 있습니다.
이 글에서는 targetSdkVersion의 의미와 설정 방법, 그리고 이 설정이 앱에 미치는 영향을 다루겠습니다.
Target SDK Version의 의미는?
targetSdkVersion은 앱이 설계된 최대 Android 버전을 지정하는 속성입니다.
이 값은 앱이 정상적으로 동작할 수 있도록 최신 Android OS에서 제공하는 새로운 기능을 사용할 수 있도록 해주며,
특정 버전의 OS에서 예상되는 동작을 명시적으로 정의합니다.
- 기본 동작: Android는 앱이 실행되는 Android 버전이 targetSdkVersion보다 낮으면, 새로운 Android 버전의 변화된 동작을 구형 동작으로 자동 적용합니다.
- 최신 동작: targetSdkVersion이 최신 Android 버전으로 설정되면, 앱은 해당 버전에서 제공하는 새로운 기능과 동작을 지원할 수 있습니다.
따라서, targetSdkVersion을 올바르게 설정하는 것은 앱의 최신화뿐만 아니라, 호환성 있는 앱을 유지하는 데 필수적입니다.
왜 targetSdkVersion을 설정해야 할까?
Android는 버전마다 동작 방식이나 보안 정책이 다르기 때문에, targetSdkVersion을 설정하는 것은 앱의 안정성과 보안을 확보하는 데 중요한 역할을 합니다.
예를 들어, 최신 Android 버전에서 도입된 변경 사항이나 보안 업데이트를 반영하려면, targetSdkVersion을 최신 버전으로 설정해야 합니다.
또한, Google Play의 정책에 따라 앱은 최신 targetSdkVersion을 따라야 합니다.
Google Play는 1년마다 새로운 targetSdkVersion을 요구하며, 이를 따라가지 않으면 새로운 기능이나 정책을 적용받지 못할 수 있습니다.
targetSdkVersion 설정 방법은?
targetSdkVersion은 build.gradle 파일에 설정됩니다. 예시 코드는 다음과 같습니다.
android {
compileSdkVersion 35 // 컴파일할 Android SDK 버전
defaultConfig {
applicationId "com.example.myapp"
minSdkVersion 21 // 최소 지원 Android 버전
targetSdkVersion 35 // 타겟 SDK 버전
}
}
위 코드에서 compileSdkVersion은 컴파일 시 사용되는 SDK 버전을 정의하고,
minSdkVersion은 앱이 지원하는 최소 Android 버전을,
targetSdkVersion은 앱이 최적화되어 동작할 최대 Android 버전을 설정합니다.
아직 SDK 35에 대한 데드라인이 나오진 않았지만, 작년의 기준으로 보았을때는 2025년 8월 31일로 볼 수 있습니다.
작년에는 Google Play에 앱 업데이트를 제출하려면, 2024년 8월 31일까지 SDK 34 타게팅이 필수로 필요했습니다.
또한 앱을 업데이트하기 위해 시간이 더 필요한 경우에 개발자는 11월 1일까지로 기한 연장을 요청할 수 있습니다.