Android开发入门之Android目录代码结构概述

2016-03-01 13:58:48 470浏览

        在Android最早发布时,Google公司官方将Java语言作为第三方应用的开发语言,但是也没有完全拒绝c语言的开发人员使用自己的语言进行开发,因为在Android发布初期,Google就表明其虚拟机支持JNI(Java Native Interface,Java本地调用),也就是第三方可以通过JNI调用自己的c动态库。但是最早Google并未为这种方式提供相应的工具支持这种开发方式。直到2009年6月,Google Android方面发布了NDK(Native Develop Kit,原生态本地开发包),支持开发者使用C/C++语言开发Android程序。

        我们还应了解Android的代码组织方式,这样将对阅读代码和分析问题有很大的帮助。先介绍Android源码阅读与开发的前提条件:因为在上一篇的Android培训之android概述四层体系结构所述四层结构中,第一层由C语言实现,第二层由C和c++实现,第三、四层主要由Java代码实现,所以,要学习Android开发,应具有C、C++、Java三种语言的基础。

Android开发入门之Android目录代码结构概述

    Android代码包括三个部分:①核心工程(Core Project)是建立Android系统的基础,在根目录的各个文件夹中;②扩展工程(External Project)即使用其他开源项目扩展功能;③包(Package)提供Android应用程序和服务,其中既包含要在Android设备上运行的代码,还包括主机编译工具、仿真环境等。

         第一级别的目录和文件如下:

        1)Makefile:全局的Makefile。

        2)bionic:这里面是一些基础的库的源代码。

    3)bootloader:引导加载器,不同的平台,该名字会稍有不同,但其意义差不多;事实上,有很多平台都有专有boot目录,以满足这些平台特殊的引导要求。

    4)build:目录的内容不是目标所用的代码,而是编译和配置所需要的脚本和工具。

    5)dalvik:Java虚拟机。

        6)development:程序开发所需要的模板和工具。

        7)device:与实际目标机器所用平台直接相关的库或源码。

        8)external:目标机器使用的一些库,其实现了开源的扩展功能。

        9)frameworks:应用程序的框架层。

        1 0)hardware:与硬件相关的库,前面讲的HAL就是在这个目录下实现的。

        1 1)kernel:Linux的源代码。

         1 2)packages:Android的各种应用程序。

        l 3)prebuilt:Android在各种平台下编译的预置脚本。

        14)recovery:与目标的恢复功能相关。

        15)system:Android底层的一些库。

        16)vendor:有的CPU厂商用它来放置与CPU相关的CSP或BSP相关代码或库。

        解释几个我们经常碰到的名词:SDK全称是Software Develop Kit,是指Android开发完整的软件包,是对上述代码的总称;CSP全称是CPU Support Package,是针对某操作系统而适配的、与CPU紧密相关的代码与库;BSP全称是Board Support Package,是针对某操作系统而适配的、与具体开发的PCB板紧密相关的代码与库;PCB全称是PrintCircuit Board,一般是指印刷电路板,它是开发将要依赖的硬件基础。

 查看更多关于“Android培训资讯”的相关文章>>

标签:

热门专区

暂无热门资讯

课程推荐

微信
微博
15311698296

全国免费咨询热线

邮箱:codingke@1000phone.com

官方群:148715490

北京千锋互联科技有限公司版权所有   北京市海淀区宝盛北里西区28号中关村智诚科创大厦4层
京ICP备12003911号-6   Copyright © 2013 - 2019

京公网安备 11010802030908号