Android培训班(8)

来源:互联网 发布:网络连接器主要有什么 编辑:程序博客网 时间:2024/04/28 20:22

Android的代码是比较庞大的,如果要全部编译一遍,是花费比较多时间,这样导致开发效率非常低,那么有没有办法只编译修改那一部份代码呢?答案是肯定有的,因为面对这么多代码,如果没有好的方法是开发不成功的。下面就来学习怎么样单个目录编译的方法。

 

android的顶层目录里,运行下面的命令:

. build/envsetup.sh

 

运行命令后,就添加了很多命令到sh解释器,具体命令如下:

-croot:   Changes directory to the top ofthe tree.

-m:       Makes from the top of the tree.

-mm:      Builds all of the modules in thecurrent directory.

-mmm:     Builds all of the modules in thesupplied directories.

-cgrep:   Greps on all local C/C++ files.

-jgrep:   Greps on all local Java files.

-resgrep: Greps on all local res/*.xml files.

-godir:   Go to the directory containing afile.

 

其中命令croot是改变到顶层目录;m是编译源码树;mm是编译当前目录下所有模块;

mmm是编译所有满足条件编译的模块;cgrep是查找本地所有C/C++文件;jgrep是查找本地所有java文件;resgrep是查找本地所有资源文件res/*.xmlgodir是跳到包括这个文件的目录。

 

下面就是演示使用命令来编译一个目录:

tony@tony-desktop:~/arm/Android-2.0/system/core$mm

============================================

PLATFORM_VERSION_CODENAME=AOSP

PLATFORM_VERSION=AOSP

TARGET_PRODUCT=generic

TARGET_BUILD_VARIANT=eng

TARGET_SIMULATOR=

TARGET_BUILD_TYPE=release

TARGET_ARCH=arm

HOST_ARCH=x86

HOST_OS=linux

HOST_BUILD_TYPE=release

BUILD_ID=MASTER

============================================

make:进入目录'/home/tony/arm/Android-2.0'

 

这个命令是在目录~/arm/Android-2.0/system/core开始编译,这样编译速度就可以提高很多了。

原创粉丝点击