想问下android可以为成哪几个方向,感觉可以分为应用程序的,android系统定改的,以及底层驱动的,后两者貌似是C、C++的linux相关的东西。望高手解惑,好了解下android当前的开发方向以及系统驱动涉及的必备知识,谢谢啦。

解决方案 »

  1.   

    android的源码也没弄清楚,有人说android的是不开源的,不属于linux公社了,然后我能找到的都是javaAPI的接口代码。android源码到底包含哪些啊,哈哈,实在是太弱了,求教啊。
      

  2.   

    Android 主要有 应用层得代码 package 里面的 还有就是 framework里面的代码 hal里面的代码 最后一层是kernel里面的代码
    总共是有4层得代码
    应用层  android的应用工程师
    中间层  基本是系统工程师(这个要求就高了 貌似了解的比较多啊,不过最好做过kernel 转过来还靠谱一点)
    kernel层 驱动工程师
    看看自己喜欢那一块?
      

  3.   

    嗯,清晰好多,多谢啊.还想问一下,中间层和kernel层是C++和C吗,还有,kernel层的学习可以离开android系统本身吗,我的意思是,kernel层的学习只需要linux内核系统就行吗,或者说学习linux比如乌班图之类的系统的内核了,再学习android系统的kernel,是不是大同小异呢?
      

  4.   

    接着LS的说,kernel层 驱动工程师完全可以直接学习linux kernel和设备驱动,丝毫不用理会什么是android。
    作驱动需要的嵌入式知识储备很大。
    中间层 基本是系统工程师 技术和技术之间衔接的领域永远是最难的,因为要又懂上又懂下,这个一般新转行做不了要多学习多积累经验在了解了linux内核之后,推荐《Android技术内幕·系统卷》
      

  5.   


    在补充一点,Android自己较linux kernel又添加了些独有的驱动,当然是在了结linux内核之后才去学习方便体会的