我在ubuntu 11.04上成功获得并编译了android 4.0.3。 一切都很好(经过很多尝试:)) 现在我正在寻找操作系统的代码概述。我理解内核是一个不同的回购(也得到它) 告诉我,如果我做对了 - 内核是用C编写的,但除了用Java编写的核心外,整个操作系统是什么?我认为只有UI是用Java编写的,并且dalvik下面有很多组件 我是一名C / C ++程序员。你在哪里建议我开始寻找? 我打算重新审视内核,但是我没有测试主题来调试它..我正在使用模拟器。 谢谢。
答案 0 :(得分:2)
以下是Android开发者网页上的着名图片:
因此,Linux Kernel是一个Linux内核,用C / C ++编写。库层(绿色部分)也用C / C ++编写。这些库是外部项目,只是在Android中使用。您可以在external
文件夹中找到这些库的来源。
Android Runtime。 DVM是用C / C ++编写的。
所有蓝色矩形表示这些组件是用Java编写的。 Application Framework是用Java编写的。源位于framewokrs
文件夹中。但是这个文件夹中的代码也是用C / C ++编写的。这些代码主要用于JNI通信。
答案 1 :(得分:0)
Android是用java,C和C ++混合编写的。 UI部分主要使用Java完成,框架中包含java,C和C ++。除了dalvik之外的组件也是用C / C ++编写的。许多核心服务,如ActivityManager,surfaceflinger,AudioFlinger都是用C和C ++编写的。
就linux内核而言,您可以检查this post以使其正常工作