本篇文章为大家展示了Android 2.2源码编译需注意哪些问题,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
Android 2.2的编译,从源码直接make就ok。需要jdk6!这个编译所需时间因机器配置不同而不同。我这次全部编译大概用了两个小时。编译产生的文件在你源码目录/out/下面
编译完了后编译sdk,
cd ~/android/src . build/envsetup.sh lunch sdk-eng make sdk
这里需要注意的是:Android 2.2编译sdk当中有个编译doc的部分需要用jdk5!网上有介绍很多办法,我采用了直接注释(即略过doc的编译的办法)。这样就免去了将开发环境中的jdk的版本换来换去的。具体做法是:注释文件 build\core\droiddoc.mk 中的ALL_DOCS += $(full_target)这一行即可(这一行前面加#即可)。
关于这一点,可以这样,在编译源码时用jdk5.0,编译sdk时用jdk6.0,但是仍然要注释文件 build\core\droiddoc.mk 中的ALL_DOCS += $(full_target)这一行。关于用两个版本的jdk我是这样的做的:去sun官网将jdk1.5和1.6的安装包都下载回来,都安装,在/etc/profile中指定JDK_HOME JRE_HOME等环境变量,要切换版本时,就在这边的环境变量中写上对应版本的路进即可,然后source profile,然后java -version查看版本,有时可能要重启才会生效)如图
Android 2.2的sdk编译OK后,在1的ou/host/linux-x86目录下面会有sdk目录生成。里面所产生的内容和网上下载到的sdk基本类似,如图:(单击放大)
安装Eclipse的ADT插件。针对android 2.2的sdk至少需要0.96的ADT。你现在编译的是Android 2.2的sdk,千万不要用现在官方已经升级的8.0的adt,那样会出现在在eclipse中认不到模拟器。(2010/12/10更新)而且在安装ADT插件时,jdk需要jdk...6_21(我同事那个是6_15就报了空指针异常了,如果你重新装完了jdk,注意更新java_home等环境变量)。
此时,新建的Android 2.2的工程,编译会出错。Unableto get buffer of resource assetfile。就是类似前面的这样的错误。。。解决办法网上也有很多。我采用了比较直接的:通过覆盖android.jar包中的resource.arsc。这个resource.arsc文件可到win下面的sdk的android.jar中复制一个过来,然后直接粘贴到编译出来的android.jar中。
解决办法是将build sdk时候的product该为sdk,有两种方法:
1、使用lunch更改配置:
cd ~/android/src . build/envsetup.sh lunch sdk-eng make sdk
上述内容就是Android 2.2源码编译需注意哪些问题,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。