文章目錄
Android build target list.
- make sdk - build the tools that are part of an SDK (adb, fastboot, etc.)
- make snod - build the system image from the current software binaries
- make services
- make runtime
- make droid - make droid is the normal build.
- make all - make everything, whether it is included in the product definition or not
- make clean - remove all built files (prepare for a new build). Same as rm -rf out/<configuration>/
- make modules - shows a list of submodules that can be built (List of all LOCAL_MODULE definitions)
- make <local_module> - make a specific module (note that this is not the same as directory name. It is the LOCAL_MODULE definition in the Android.mk file)
- make clean-<local_module> - clean a specific module
Build Variants
When building for a particular product, it's often useful to have minorvariations on what is ultimately the final release build. These are thecurrently-defined build variants:
eng |
This is the default flavor. A plain make is the same as make eng .
- Installs modules tagged with:
eng , debug , user , and/or
development .
- Installs non-APK modules that have no tags specified.
- Installs APKs according to the product definition files, in addition to tagged APKs.
ro.secure=0
ro.debuggable=1
ro.kernel.android.checkjni=1
adb is enabled by default.
|
user |
make user This is the flavor intended to be the final release bits.
- Installs modules tagged with
user .
- Installs non-APK modules that have no tags specified.
- Installs APKs according to the product definition files; tags are ignored for APK modules.
ro.secure=1
ro.debuggable=0
adb is disabled by default.
|
userdebug |
make userdebug The same as user , except:
- Also installs modules tagged with
debug .
ro.debuggable=1
adb is enabled by default.
|
If you build one flavor and then want to build another, you should runmake installclean
between the two makes to guarantee thatyou don't pick up files installed by the previous flavor.
makeclean
will also suffice, but it takes a lot longer.