"source build/envsetup.sh" 명령어를 실행하여 안드로이드 소스코드로 작업할 수 있는 명령어를 불러 올 수 있습니다.
"hmm" 명령어를 실행하면 활성화된 명령어들의 목록을 확인할 수 있습니다.
명령어 종류
launch
launch 명령어는 빌드할 타겟을 선택하는 명령어입니다.
launch <product_name>-<build_variant>
product_name : 빌드할 디바이스의 이름
build_variant : 특정 디바이스 빌드를 어떻게 구성할지 정의
build_variant 타입
- eng(Engineering) : 모든 디버깅 기능 활성화, 코드 최적화 적게 진행, 가장 많은 로그 메시지, 테스트 기능 포함
- userdebug : 디버깅 기능 추가, 일반 사용자 빌드와 비슷한 성능 및 최적화, 디버깅 목적으로 주로 사용
- user : 최종 사용자 빌드, 디버깅 기능 비활성화, 로그 메시지 최소화, 안정성, 보안성 제공
tapas
특정 모듈(앱 또는 라이브러리)만 빌드할때 사용되는 명령어입니다.
tapas <build_variant> <module_name>
launch 명령어와 비슷하게 빌드할 대상과, 빌드 타입을 결정해주고 실행하면 됩니다.
tapas eng Calculator
Calculator(계산기앱)만을 eng 타입으로 빌드하는 명령어입니다.
m
프로젝트 파일 트리 가장 상단부터 빌드를 즉 전체 시스템을 빌드할때 사용되는 명령어입니다.
mm (=mma)
현재 작업 디렉토리와 그 하위 디렉토리 내의 모듈을 빌드하는데 사용되는 명령어입니다.
cd paht/to/directory
mm
mmma (=mmma)
현재 디렉토리 또는 특정 경로에 있는 모듈을 빌드하는데 사용되는 명령어입니다.
cd path/to/directory
mmm
현재 경로부터 하위 디렉토리들을 빌드합니다.
mmm path/to/directory path/to/another/directory
mmm 명령어 뒤에 오는 하나 또는 두개 이상의 경로에 디렉토리를 빌드합니다.
m clean
이전에 빌드했던 결과물들을 정리하는 명령어 입니다.
croot
AOSP 빌드 환경에서 루트 디렉토리로 이동하는 명령어입니다.
provision
디바이스 플래싱을 모든 필수 파티션에 걸처 수행하는 명령어입니다.
grep 관련 명령어
cgrep : 모든 c/c++ 파일들을 grep
ggrep : 모든 gradle 파일들을 grep
gogrep : 모든 go 파일들을 grep
jgrep : 모든 java 파일들을 grep
resgrep : 모든 res 디렉토리에 있는 모든 xml 파일들을 grep
mangrep : 모든 AndroidManifest.xml 파일들을 grep
mgrep : 모든 Makefile 또는 Android.bp(Blueprint) 파일들을 grep
sepgrep : 모든 sepolicy 파일들을 grep
sgrep : 모든 source 파일들을 grep
용어
플래싱(Flashing)
장치에 장착된 메모리 중 ROM에 데이터를 덮어쓰는 기술입니다.
주로 펌웨어나 운영 체제를 저장하는 비휘발성 메모리(ROM)에 새로운 소프트웨어를 설치하는 과정이 이루어집니다.
참고
https://source.android.com/docs/setup/build/building?hl=ko
Android 빌드 | Android 오픈소스 프로젝트 | Android Open Source Project
Android 빌드 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 다음 안내에 따라 Android 빌드를 시작합니다. 환경 설정 다음과 같이 envsetup.sh 스크립트로 환경을
source.android.com
'AOSP' 카테고리의 다른 글
AOSP) 빌드 시스템[1] : Build System (0) | 2024.08.27 |
---|---|
AOSP) 빌드 도구 Makefile, Soong (0) | 2024.08.22 |
AOSP) adb(Android Debug Bridge) (0) | 2024.08.20 |
AOSP) 코드 수정 : 시스템 앱 내 텍스트 변경 (0) | 2024.08.20 |
AOSP) 구조 파악하기 (AOSP 파일 구조) (0) | 2024.08.18 |