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 | |
| 5 | 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.
| Command | Commands |
|---|---|
| flash | flash system system.img |
| continue | leave the fastboot mode in the bootloader |
| boot |
netcfg
ADB
adb sync
adb install -r foo.apk
adb connect <ip:port>
on target
su setprop service.adb.tcp.port 5555 stop adbd start adbd