#1 알고리즘
안드로이드 API 레벨이 오를 때마다, 당연하게도 사용할 수 있는 안드로이드 프레임워크의 라이브러리가 달라진다. 예를 들어, android.widget.Toolbar 클래스는 안드로이드 API 레벨 21에 추가되었기에, 하위 버전의 API에서는 오류가 발생한다. Support Library가 나오기 전 안드로이드 개발자들은 앱이 설치된 휴대폰의 API 레벨을 읽고, 각 API 별로 분기 코드를 작성해야 했다.
이후, Support Library 출범 후 예전 안드로이드 API에도 최신 기능을 사용할 수 있게 되었다. 예를 들어, android.support.v7.widget.Toolbar 클래스는 안드로이드 API 레벨이 7 이상이기만 하면 사용할 수 있다 (패키지 명(네임스페이스)에 있는 v7은 가용한 최소 API 레벨을 표시한 것이다). 하지만 Support Library는 네임스페이스가 너무 복잡해서 가독성이 떨어졌고, 이로 인해 패키지를 import할 때 비슷한 이름으로 인한 충돌도 일어나곤 했다. 또, android.support 하위 라이브러리들을 따로따로 업데이트하는 방식이었기 때문에 유지 보수가 복잡했다.
이후 Jetpack이 출시되었는데, 그 일부인 AndroidX는 Support Library의 문제점을 개선한 완전 상위호환의 모습을 보여준다. 그 덕에 현재 Support Library는 Deprecated된 상태다.
#2 요약
시스템의 API가 서로 달라도 AndroidX는 일관된 동작을 보장한다.
'깨알 개념 > Android' 카테고리의 다른 글
[Android] LiveData - 기초 (0) | 2024.01.16 |
---|---|
[Android] ViewModel - 뷰 모델에 인자(Argument) 전달 (ViewModelFactory) (0) | 2024.01.15 |
[Android] ViewModel - 기초 (0) | 2024.01.13 |
[Android] Data Binding - View에 객체 전달 (0) | 2024.01.12 |
[Android] Data Binding - 기초 (0) | 2024.01.11 |