您的位置:首页 > 移动开发 > Android开发

编译AOSP方便阅读源码

2016-04-19 17:26 633 查看
背景:

下载完成AOSP阅读源码的过程中,由于代码量打,如果使用日志的方式来判断业务流程怎么走会提升效率,因此怎样才能正确的使用log日志有助于快速阅读是这部分文档的目的。

分析:

1.下载AOSP。

1.1AOSP在国内可以使用TUNA的镜像,具体的方法如下面的链接:

https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

1.2下载完成后,有可能会有其他的Vendor驱动需要添加,需要下载对应的驱动,参考下面的文章。为了尝试使用kraft2的Vendor驱动,但是发现失败,此处没有进一步深入,感觉应该和底层驱动有关系。

http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0210/2455.html

2.编译AOSP。

尝试过1.2中的错误后,后面选择了默认编译,注意lunch时的选择,参考1.2中的链接,知道lunch的选项如下:

/data/AOSP_6_TUNA/AOSP$ lunch

You’re building on Linux

Lunch menu… pick a combo:

1. aosp_arm-eng

2. aosp_arm64-eng

3. aosp_mips-eng

4. aosp_mips64-eng

5. aosp_x86-eng

6. aosp_x86_64-eng

7. aosp_deb-userdebug

8. aosp_flo-userdebug

9. full_fugu-userdebug

10. aosp_fugu-userdebug

11. mini_emulator_arm64-userdebug

12. m_e_arm-userdebug

13. mini_emulator_mips-userdebug

14. mini_emulator_x86_64-userdebug

15. mini_emulator_x86-userdebug

16. aosp_flounder-userdebug

17. aosp_angler-userdebug

18. aosp_bullhead-userdebug

19. aosp_hammerhead-userdebug

20. aosp_hammerhead_fp-userdebug

21. hikey-userdebug

22. aosp_shamu-userdebug

对android avd配置信息的生成:应的机型对比如下:

Device Code name Build configuration

Nexus 6 shamu aosp_shamu-userdebug

Nexus Player fugu aosp_fugu-userdebug

Nexus 9 volantis (flounder) aosp_flounder-userdebug

Nexus 5 (GSM/LTE) hammerhead aosp_hammerhead-userdebug

Nexus 7 (Wi-Fi) razor (flo) aosp_flo-userdebug

Nexus 7 (Mobile) razorg (deb) aosp_deb-userdebug

Nexus 10 mantaray (manta) full_manta-userdebug

Nexus 4 occam (mako) full_mako-userdebug

Nexus 7 (Wi-Fi) nakasi (grouper) full_grouper-userdebug

Nexus 7 (Mobile) nakasig (tilapia) full_tilapia-userdebug

Galaxy Nexus (GSM/HSPA+) yakju (maguro) full_maguro-userdebug

Galaxy Nexus (Verizon) mysid (toro) aosp_toro-userdebug

Galaxy Nexus (Experimental) mysidspr (toroplus) aosp_toroplus-userdebug

PandaBoard (Archived) panda aosp_panda-userdebug

Motorola Xoom (U.S. Wi-Fi) wingray full_wingray-userdebug

Nexus S soju (crespo) full_crespo-userdebug

Nexus S 4G sojus (crespo4g) full_crespo4g-userdebug

所以最后选择了aosp-arm-eng 模拟器enginee 即默认的lunch


3.运行img。

编译完成后会输出文件到out目录下。最重要的几个img文件如下:

system.img

userdata.img

ramdisk.img

因此在编译完成后在out目录下使用下面的命令来启动模拟器:

emulator -data userdata.img
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android