多与人交流

昨天尝试按照周老师交给的方法,生成update-usb.zip这个压缩文件,因为这个文件可以直接烧录到板子中,但在我这边进行烧写的时候就出现错误,烧录步骤:

1.进入Android 源代码的目录,source build/envsetup.sh

2.lunch full_godbox-eng

3. source mk-ics.sh

之后提示Java Memory相关的异常,之后就去找王。感觉他对Android系统还是比较理解的,特别是对Makefile这些东西,研究得应该比较多,以下子就定位到了在哪个地方出了错。而我自己感觉这方面很有欠缺,很少尝试,自己跟一下错误的地方(首先查看mk-ics.sh,这个shell编程也不是太了解,感觉很多东西要学)。下次得自己尝试着看这些Makefile,shell 脚本了。编译还是出错,之后他去找师兄,师兄说你在压缩那行随便加个什么文件试试,尝试之后还是出错。

“你可以把你单独编译你那个模块,之后替换到板子上去。”

这确实可行,又省去了很多事情。

对于模拟器中可能会不一样,因为模拟器中每次启动时都会调用到system.img等,所以,需要每次都要像下面这样进行单独编译。

单独编译模块

android中的一个应用程序可以单独编译,编译后要重新生成system.img 
在源码目录下执行 
$ . build/envsetup.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. 
可以加—help查看用法 
我们可以使用mmm来编译指定目录的模块,如编译联系人: 
$ mmm packages/apps/Contacts/ 
编完之后生成两个文件: 
out/target/product/generic/data/app/ContactsTests.apk 
out/target/product/generic/system/app/Contacts.apk 
可以使用 
$ make snod 
重新生成system.img,再运行模拟器


多与人交流,享受获取新知识的兴奋,感受自己的成长。加油

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值