App노자

[Android] API 레벨 호환성 본문

Android/AndroidStudio

[Android] API 레벨 호환성

앱의노예 2022. 12. 18. 15:14

 

https://developer.android.com/guide/topics/manifest/uses-sdk-element?hl=ko 

 

Android 개발자  |  Android Developers

하나 이상의 Android 플랫폼 버전과의 애플리케이션 호환성을 API 수준 정수로 표시할 수 있습니다. 애플리케이션에 표시된 API 수준은 해당 Android 시스템의 API 수준과 비교합니다.

developer.android.com

다양한 버전을 지원하는 앱을 만들기 위해 버전별 분기 처리가 필요할 때가 있다

코드를 작성하려면 버전별로 API 수준이나 버전 코드를 알아야 한다

위 사진은 안드로이드의 버전별 Api 수준과 버전 코드이며 밑에 안드로이드 개발자 사이트에서 자세히 확인할 수 있다

 

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

 

버전 코드를 이용한 처리 방법이다

Android 버전 8.0, API 26, 안드로이드 오레오 이상에서만 동작한다

 

if(Build.VERSION.SDK_INT >= 23) // Android 6.0 이상

 

API수준을 이용한 처리 방법이다

Android 버전 6.0, API 23, 안드로이드 마시멜로 이상에서만 동작한다

 

API 수준으로 처리하는 게 개인적으로 보기가 더 편하다

iOS, Android 양쪽 다 짧은 경험이지만 느낀 점은 Android는 iOS에 비해 뭔가 통일성이 없고 확실하게 밀고 나가는 부분이 없다

버전만 하더라도 난잡하다

플랫폼 버전, API 수준, 버전코드 이유가 있을지도 모르지만 내 얕은 지식으론 굳이 여러 가지로 나눈 그 이유를 잘 모르겠다

방향성을 하나로 확실하게 밀고 나갔으면 한다