Android OS 버전 정리

원성희·2022년 4월 29일
1

Android

목록 보기
1/2

목표

  • Android 버전 정리하자.
  • 각 버전별로 크게 변경된 점을 숙지하여 대응한다.
  • 새로운 버전 릴리즈는 개발자에게 축제 혹은 파티와 같이 생각하면서 즐겨보자.

안드로이드 버전 이름

개발자들과 대화를 하다보면 가끔 버전 네이밍에 대해서 얘기하는데, 상식으로 알아두면 좋다. 나는 1.6버전부터 개발을 진행했었다. Android 소스 전체를 구글에서 받아서 돌려보면 파일IO가 안되서 커널 소스를 고치던 추억이 있다.

  1. 베타
  2. 안드로이드 1.0 애플파이
  3. 안드로이드 1.1 쁘띠 푸르
  4. 안드로이드 1.5 컵케이크
  5. 안드로이드 1.6 도넛
  6. 안드로이드 2.0 / 2.1 에클레어
  7. 안드로이드 2.2 프로요
  8. 안드로이드 2.3 진저브레드
  9. 안드로이드 3.0 ~ 3.2 허니콤
  10. 안드로이드 4.0 아이스크림 샌드위치
  11. 안드로이드 4.1 ~ 4.3 젤리빈
  12. 안드로이드 4.4 킷캣
  13. 안드로이드 5.0 롤리팝
  14. 안드로이드 6.0 마시멜로
  15. 안드로이드 7.0 누가
  16. 안드로이드 8.0 오레오
  17. 안드로이드 9.0 파이
  18. 안드로이드 10 퀸 케이크
  19. 안드로이드 11 레드 벨벳 케이크
  20. 안드로이드 12 사브리나
  21. 안드로이드 13 티라미수

Android 10

정리 필요함.

Android 11

정리 필요함.

Adnroid 12

정리 중.

Android 13

현재는 미출시 상태이다. 2022년 3Q 출시 예정이며, 6월부터 베타 릴리즈가 시작된다. 프레임워크 API 레벨은 33이다. 아래에 링크에 자세히 설명되어 있고, 각 기능별로 정독해보고 알아야 할 부분들은 정리해본다.

https://blog.esper.io/android-13-deep-dive/#table-of-contents

New Features 새로운 기능

  • Accessibility : 시각장애인을 위한 내레이션을 선택 가능하도록 토글 추가, 돋보기 기능이 text 위치를 따라간다. 새로운 퀵 타일들이 추가됨
  • Audio 오디오 : 블루투스LE, 미디2.0 지원 등
  • display : 해상도 변경, 잠자는 시간 다크모드 지원
  • docking : 계정별로 앱 공유하는 허브모드, 화면보호기 개선
  • Languages & input : 앱별로 언어 설정이 가능하다. 이슈 꽤나 나올 듯 ㅠㅠ
  • multiuser : 게스트 프로필로도 앱 설치 쉬워진다.
  • Navigation & multitasking : 작업표시줄(Taskbar) 서랍 방식 도입, 클립보드 에디터 개선, 홈버튼 롱키 액션 disable 가능, MULTIPLE_TASK flag를 사용하여 화면분리 Drag를 통해 멀티작업 가능, Notification으로 부터 Drag해서 멀티타스트 가능(12L에 소개), 제스쳐 뒤로가기 개선
  • Bandwidth throttling : 네트워크 스피드 조절이 가능함. Developer Options
  • 7-day view in privacy dashboard : 7일동안 볼 수 있다.
  • Clipboard auto clear : 기존에는 삭제가 안되었는데 60분 후에 삭제된다.
  • Control smart home devices without unlocking the device : 언락없이 스마트홈디바이스 컨트롤이 가능하게 변경

유저 인터페이스 변경

디자인은 많은 부분들이 업데이트(?) 되었다. 특이할만한 부분들만 정리해본다. 주로 큰 화면 UI 지원이 넓어졌다고 한다. 안드로이드의 활용 분야가 넓어졌다고 볼 수 있다.

  • Consolidated font and display settings : 폰트와 디스플레이가 통합됨.
  • Bottom search bar in the launcher app drawer : 앱 서랍에 서치바 추가
  • Custom interface for PCs : 데탑 혹은 dex용 인터페이스 제공
  • Squiggly progress bar : 신기한 프로그레스 바 ㅎㅎ 적용하면 재미있을 듯

동작변경

  • Media controls are now derived from PlaybackState : 미디어 state 변경

  • Control an app’s ability to turn on the screen : 스크린 켜기 기능 추가

  • Foreground service manager and notifications for long-running foreground services : 오래돌아가는 서비스를 노티해 준다.

  • Job priorities : JobInfo를 JobScheduler에 알려주어 앱 작업에 필요한 네트워크, 충전 상태 등의 조건을 지정할 수 있다.

    PRIORITY_MIN: For tasks that the user should have no expectation or knowledge of, such as uploading analytics. May be deferred to ensure there’s sufficient quota for higher priority tasks.
    PRIORITY_LOW: For tasks that provide some minimal benefit to the user, such as prefetching data the user hasn’t requested. May still be deferred to ensure there’s sufficient quota for higher priority tasks.
    PRIORITY_DEFAULT: The default priority level for all regular jobs. These have a maximum execution time of 10 minutes and receive the standard job management policy.
    PRIORITY_HIGH: For tasks that should be executed lest the user think something is wrong. These jobs have a maximum execution time of 4 minutes, assuming all constraints are satisfied and the system is under ideal load conditions.
    PRIORITY_MAX: For tasks that should be run ahead of all others, such as processing a text message to show as a notification. Only Expedited Jobs (EJs) can be set to this priority.

  • Notifications for excessive background battery use : 백그라운드 배터리 사용 경고

  • Prefetch jobs that run right before an app’s launch : 앱 시작전에 pre 작업을 등록하여 사용할 수 있다.

    setPrefetch
    https://developer.android.com/reference/android/app/job/JobInfo.Builder#setPrefetch(boolean)

  • The Android Resource Economy(TARE) : credits에 위임하여 비용을 산출하여 관리한다.

  • Hardware camera and microphone toggle support

  • Non-matching intents are blocked : 앱이 Android 13 이상을 타겟팅하는 다른 앱의 내보낸 구성요소로 인텐트를 보낼 경우, 인텐트는 받는 앱의 요소와 일치하는 경우에만 전송됩니다. 즉, 시스템은 다음과 같은 경우를 제외하고 모든 일치하지 않는 인텐트를 차단합니다.

    https://developer.android.com/about/versions/13/behavior-changes-13#intent-filters

플랫폼 변경

해당 변경점에 대해서는 한번 읽어 보고 정리는 생략하도록 하겠다.

  • Audio HAL 7.1 with Ultrasound & latency mode
  • Virtual Audio Device
  • Basic support for WiFi 7
  • Privacy Sandbox
  • 기타 등등

결론

큰 파도들을 타는 서퍼들은 힘들어 보일 수도 있다. 하지만 더 큰 파도를 고르면서 타려고 한다. 재미?
이 파도처럼 IT분야에서는 항상 많은 변화와 개선 사항들이 몰려온다. 물론 개발자들에게는 이슈와 대응 업무가 과중될 수 있다. 긍정적으로 생각하기로했다. 항상 새로운 것을 받아들이고 준비하는데 재미를 느껴보자고... 그럼 자연스럽게 서퍼처럼 기술의 흐름을 잘 탈 수 있지 않을까 싶다.

참고사이트

android 13 : https://developer.android.com/about/versions/13
https://blog.esper.io/android-13-deep-dive/

profile
Simple is Best

0개의 댓글