책에서 Dynamic Linking 예시로 성능을 위해 어느 부분은 C++ 로 작성하고 나머지는 Python으로 작성할 수 있다
이 말 하나에 꽂혀서 갑자기 학부시절에 나름 두번의 프로젝트를 진행한 안드로이드의 구조가 생각이 났다
뭔가 이게 동작하는 방식을 분석해보고 싶었으나
아래 내용 읽어보다가 벌써 잘 시간이 됨
원래 조사하려던 내용은 아니지만, 새로운 세계라 아래에 정리해두었다
- 구글이 만든 모바일 플랫폼의 오픈소스 운영체제 프로젝트
- 디스크 여유 공간이 400GB 이상 있어야함 (체크아웃하는데 250GB, 빌드하는데 150GB) from 환경설정
GMS(Google Mobile Service)에 독점적인 기능 추가
=> GMS 기능을 오픈소스로 재구현하는 프로젝트 (https://microg.org/) 진행중
커스텀 펌웨어
- 전자기기에 사용되는 펌웨어를 대체하는 자작 혹은 편집된 펌웨어
ex) 커스텀 DTH, 스마트앱스(SmartApp), 엣지 드라이버
- AOSP 소스코드가 나오면, 개발자들이 이 코드로 개발을 시작함
AOSP 시스템 API에 액세스할 수 있고 권한이 있는 앱과 기기 제조업체 앱을 작성하는 Android 앱 개발자
https://source.android.com/docs/core/architecture?hl=ko
여태까지 내가 아는 앱 개발자
https://developer.android.com/?hl=ko
https://source.android.com/docs/core/architecture?hl=ko
Android 앱 = Android API
권한이 있는 앱 = Android API + 시스템 API
기기 제조업체 앱 = Android API + 시스템 API + Android 프레임워크 구현
시스템 API = @SystemAPI : 파트너 및 OEM이 번들 애플리케이션에 포함하기 위해서만 사용할 수 있는 Android API
Android API = 서드 파티 Android 앱 개발자에게 공개적으로 제공되는 API
Android 프레임워크 = 앱이 기반하는 자바 클래스, 인터페이스, 기타 사전 컴파일된 코드 그룹
프레임워크의 일부는 Android API를 사용하여 공개적으로 액세스할 수 있음.
그 외의 프레임워크 부분은 시스템 API 사용을 통해 OEM에만 제공됨
[Gson] Json 구성 요소 : JsonElement, JsonObject, JsonPrimitive, JsonArray,JsonNull (0) | 2024.05.05 |
---|---|
마이크로서비스가 중요해진 배경 (0) | 2023.03.09 |
[공개소프트웨어 라이선스] (0) | 2022.10.06 |
댓글 영역