Android
Android is an Operating System.
Android Build System[1]
The Android Build System, similarly to Buildroot, is a set of build scripts (.mk files, bash scripts) used to build Android.
At the root of the Android Build System, the first thing to do is to set-up the environment: source build/envsetup.sh.
Thus, commands will be available to start the build.
| Command | Comments |
|---|---|
| croot | Jump back to the root directory |
| godir | Jump into the directory specified as a parameter |
| mm | Compile the program in the current directory |
| mm -B | Clean and compile the program in the current directory |
| lunch | Select the target to build |
| make kernelimage | Compile the kernel only |
Android partition layout
| Partition
number |
Partition | Comments |
|---|---|---|
| 1 | boot | Contains the kernel, the device tree and the initramfs |
| 2 | recover | Contains the kernel, the device tree and the initramfs |
| 3 | ||
| 4 | data | Can be wiped out |
| 5 | system | Contains the Android system |
| 6 | cache | |
| 7 | vendor |
Fastboot
Fastboot is a protocol used to communicate to the bootloader of an Android device.
The bootloader should support the fastboot protocol. It allows to flash the device from the host.
| Command | Commands |
|---|---|
| flash | flash system system.img |
| continue | leave the fastboot mode in the bootloader |
| boot |
netcfg
Android Debug Bridge
adb is a tool used to debug Android devices from the host.
| Command | Commands |
|---|---|
| sync | |
| push | |
| install -r foo.apk | |
| connect <ip:port> |
on target
su setprop service.adb.tcp.port 5555 stop adbd start adbd