这是由于修改frameworks层, 定义了新的 公有变量、常量、方法名称要提交 frameworks/base/api/ current.txt 这个文件。ide
1) 添加系统API或者修改@hide的API后,须要执行
make update-api,而后再makespa
2) 修改公共api后,须要orm
make update-apixml
比较framework/base/api 下的current.xml跟原始x.xml(好比2.2为8.xml, 2.3.3为10.xml),同时修改x.xmlci
而后make源码
make update-api #若是你在Android源码中添加了自定义的包、类、方法或者你修改了Android源码中标识为@hide的方法、类,你须要这些内容对 Application可见而且须要编译进SDK的Document中的话,这个命令是必须的(其实还有另一种手工修改的方式替代这个命令的,呵呵);
由于每次下载新版本编译都会有错误后。执行make update-api才能经过。很麻烦。我经过 下面方法解决:it
先下载新代码源码编译。错误后执行 make update-api 。之后不会有错误。而后 找到frameworks/base/api/ current.txtio
,把这个文件替换代码库的frameworks/base/api/ current.txt。之后你从代码库下载最新代码就不须要 make update-api
编译