목차 일부
01. 왜 안드로이드인가? = 1
안드로이드 채택하기 = 2
풀스택(Full Stack) 제공 = 2
폭넓은 수용성 = 2
미려한 사용자 인터페이스 = 3
리눅스 기반 = 3
막강한 개발 환경 = 4
오픈 소스 = 5
AOSP와 구글 = 7
다른 선택지 = 8
마이크로 컨트롤러 ...
더보기
목차 전체
01. 왜 안드로이드인가? = 1
안드로이드 채택하기 = 2
풀스택(Full Stack) 제공 = 2
폭넓은 수용성 = 2
미려한 사용자 인터페이스 = 3
리눅스 기반 = 3
막강한 개발 환경 = 4
오픈 소스 = 5
AOSP와 구글 = 7
다른 선택지 = 8
마이크로 컨트롤러 = 8
기타 RTOS = 10
요약 = 11
02. Acme 부팅하기 = 13
빌드 머신 구축하기 = 14
소스 코드 다운로드하기 = 16
Repo = 16
소스 포크하기 = 22
안드로이드 버전 선택하기 = 22
로컬 미러 = 24
호스팅 서비스 Git 저장소 = 26
트리 스냅숏 = 27
저장소 커밋 고정하기 = 27
예 : 포크된 저장소를 위한 로컬 미러 = 28
이미지 빌드하기 = 34
디바이스 툴 = 38
fastboot = 39
adb = 40
디바이스 플래싱하기 = 42
요약 = 47
03. 시작하기 = 48
안드로이드 계층 배치 = 48
하드웨어 = 50
리눅스 커널 = 50
시스템 라이브러리 = 51
애플리케이션 = 53
안드로이드 프레임워크 = 54
안드로이드 서비스 모델 = 55
소스 탐험하기 = 59
다른 소스들 = 60
박스에 뭐가 들어 있나? = 60
요약 = 67
04. 커널 = 68
리눅스 커널 = 69
커널 프로세스 관리 = 69
커널 메모리 관리 = 71
안드로이드 커널 = 73
안드로이드 커널 기능 = 76
커널 빌드하기 = 87
빌드 시스템 = 88
소스 다운로드하기 = 88
요약 = 93
05. 플랫폼 보안 = 94
보안의 종류 = 94
자체 검사 부팅(Verified Boot) = 95
운영 보안 = 98
안드로이드 소프트웨어 계층 = 98
프로세스 샌드박스 = 99
안드로이드용 SE 리눅스 = 102
SE 정책 정의 = 103
안드로이드 권한 = 106
파일 시스템 = 110
사용자 보호 = 115
권한 커스터마이징 = 117
사용자 정의 권한에 의해 보호받는 샘플 앱 = 118
사용자 정의 권한을 사용하는 샘플 클라이언트 앱 = 123
요약 = 128
06. 시스템 초기화 : 시스템 설치와 부팅 = 129
부팅 절차 = 129
부트로더 = 1232
Fastboot = 136
커널 = 138
파일 시스템 = 140
init = 143
복구 = 145
데몬 빌드하기 = 146
Acme 디바이스 생성하기 = 147
Repo 다시 살펴보기 = 149
데몬 시작하기 = 151
요약 = 155
07. 안드로이드의 시작 : Dalvik과 Zygote = 156
Dalvik = 158
ART = 162
기본 ART = 163
하이브리드 ART = 166
Zygote = 167
Zygote 메모리 관리 = 167
Zygote 시작 = 171
런타임 초기화 = 173
시스템 서비스 시작 = 174
요약 = 177
인용 = 177
08. 안드로이드와 통신하기 : HAL = 178
왜 HAL인가? = 178
HAL이 필요한가? = 181
HAL 설계하기 = 182
HAL 빌드하기 = 185
코드 구조 = 186
HAL 구현하기 = 188
요약 = 203
09. 자바와 통신하기 : JNI = 204
코드 구조 = 205
하드웨어 사용하기 = 207
HAL 사용하기 = 209
자바 네이티브 인터페이스 사용하기 = 212
네이티브 코드 실행하기 = 212
JNI : 자바 측면 = 214
JNI : 네이티브 측면 = 215
자바 근접 센서 애플리케이션 = 219
JNI : 몇 가지 팁 = 234
요약 = 242
10. 프로젝트 트레블 : 바인더화된 HAL = 244
HIDL 아키텍처 = 245
hwservicemanager = 247
HIDL 서비스 = 247
HIDL 클라이언트 서비스 = 247
하드웨어 인터페이스 정의 언어 (HIDL) = 248
HIDL 타입 = 255
HIDL 서비스 = 258
HIDL 클라이언트 = 263
요약 = 264
11. 바인더화된 HAL 만들기 = 265
Acme 커스텀 HIDL = 265
요약 = 288
12. 바인더화된 HAL의 클라이언트 = 289
네이티브 C++ Aproximity 클라이언트 = 290
aproximitycl을 위한 안드로이드 SE 리눅스 수정 항목 = 295
Aproximitycl을 Acme로 빌드하기 = 297
자바/코틀린 Aproximity 클라이언트 = 298
AproximityClient를 위한 안드로이드 SE 리눅스 수정 = 302
Acme 플랫폼에 AproximityClient 빌드하기 = 302
요약 = 304
부록 = 305
A. Khadas VIM3 하드웨어 소개 = 305
B. 안드로이드 9.0 포크 소스 = 310
소스 다운로드 = 310
이미지 빌드 = 311
이미지 플래싱 = 313
C. 안드로이드 11.0 정규 AOSP 소스 = 317
소스 다운로드 = 317
이미지 빌드 = 318
이미지 플래싱 = 320
더보기 닫기