首页 > 程序开发 > 移动开发 > Android >

Android培训班(8)

2011-03-08

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

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

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

. build/envsetup.sh

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

- croot: Changes directory to the top of the tree.

- m: Makes from the top of the tree.

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

- mmm: Builds all of the modules in the supplied 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 a file.

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

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

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

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开始编译,这样编译速度就可以提高很多了。

相关文章
最新文章
热点推荐