이번 편의 목표: 안드로이드 17, API 수준 37, 그리고 빌드 파일의 세 가지 SDK 숫자를 서로 다른 일로 설명합니다.
안드로이드 17은 2026년 6월 16일에 정식 공개되어 지원되는 픽셀 기기에 배포되기 시작했습니다. 개발자 문서의 API 수준은 37입니다. 플랫폼 소스도 같은 시점에 AOSP에 공개되었습니다.
앱이 빌드될 때 보는 숫자는 세 개입니다.
minSdk는 앱이 실행을 허용하는 가장 오래된 안드로이드입니다. 이 숫자를 26으로 두면 안드로이드 8.0 이후 기기에 설치됩니다. 안드로이드 17 SDK를 쓴다고 해서 minSdk를 37로 올릴 필요는 없습니다.
compileSdk는 컴파일러가 인식하는 플랫폼 API의 상한입니다. 37로 두면 안드로이드 17에 추가된 클래스와 상수를 소스에서 호출할 수 있습니다. 그 호출은 실행 기기가 실제로 그 API를 가지고 있는지는 따로 확인해야 합니다.
targetSdk는 앱이 받아들이는 플랫폼 동작 규칙의 버전입니다. 37로 두면 큰 화면의 크기 고정 무시, 로컬 네트워크 권한, 잠금 없는 메시지 큐처럼 API 37을 타깃할 때만 켜지는 규칙이 적용됩니다. 36으로 남겨 두면 그 규칙은 아직 꺼져 있습니다. 안드로이드 17 기기 위에서 돌아가는 것 자체와는 다릅니다. 기기 버전만으로 모든 앱에 적용되는 변경은 targetSdk와 무관합니다.
2026년 8월 31일부터 Google Play에 올리는 새 앱과 업데이트는, 휴대전화 기준으로 안드로이드 16인 API 36 이상을 타깃해야 합니다. Wear OS와 Automotive는 35, TV와 XR은 34가 같은 시점의 기준입니다. API 37 타깃이 Play 제출 조건이 되는 시점은 2027년 8월로 안내되어 있습니다. 그래서 오늘 빌드 파일은 compileSdk를 37로 올려 새 API와 테스트를 가능하게 하고, targetSdk는 호환을 확인한 뒤에 37로 올립니다.
공식 동작 변경 목록은 두 페이지로 나뉩니다.
직접 해 보기
지금 앱의 모듈 빌드 파일을 열어 compileSdk, targetSdk, minSdk 세 숫자를 적으세요. targetSdk가 36 이하이면 안드로이드 17 기기에서도 타깃 전용 규칙은 아직 꺼져 있습니다.
해설
compileSdk 37은 컴파일러의 시야입니다. targetSdk 37은 런타임 규칙에 대한 동의입니다. minSdk는 설치 가능한 가장 오래된 기기입니다. 세 숫자를 한 번에 37로 맞출 필요는 없습니다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.