`

android out目录结构

 
阅读更多

Android编译完成后,将在根目录中生成一个out文件夹,所有生成的内容均放置在这个文件夹中。out文件夹如下所示:
out/
|-- CaseCheck.txt
|-- casecheck.txt
|-- host
| |-- common
| `-- linux-x86
`-- target
|-- common
`-- product


主要的两个目录为host和target,前者表示在主机(x86)生成的工具,后者表示目标机(模认为ARMv5)运行的内容。

host目录的结构如下所示:
out/host/
|-- common
| `-- obj(JAVA库)
`-- linux-x86
|-- bin(二进制程序
|-- framework(JAVA库,*.jar文件)
|-- lib(共享库*.so)
`-- obj(中间生成的目标文件)

host目录是一些在主机上用的工具,有一些是二进制程序,有一些是JAVA的程序。

target目录的结构如下所示:
out/target/
|-- common
| |-- R (资源文件)
| |-- docs
| `-- obj (目标文件)
`-- product
`-- generic

其中common目录表示通用的内容,product中则是针对产品的内容。
在common目录的obj中,包含两个重要的目录:
APPS中包含了JAVA应用程序生成的目标,每个应用程序对应其中一个子目录,将结合每个应用程序的原始文件生成Android应用程序的APK包。
JAVA_LIBRARIES中包含了JAVA的库,每个库对应其中一个子目录。

在默认的情况下,Android编译将生成generic目录,如果选定产品还可以生成其他的目录。generic包含了以下内容:
out/target/product/generic/
|-- android-info.txt
|-- clean_steps.mk
|-- data
|-- obj
|-- ramdisk.img
|-- root
|-- symbols
|-- system
|-- system.img
|-- userdata-qemu.img
`-- userdata.img


在generic/obj/APPS目录中包含了各种JAVA应用,与common/APPS相对应,但是已经打成了APK包。
system目录是主要的文件系统,data目录是存放数据的文件系统。
obj/SHARED_LIBRARIES中存放所有动态库。
obj/STATIC_LIBRARIES中存放所有静态库。
几个以img为结尾的文件是几个目标映像文件,其中ramdisk是作为内存盘的根文件系统映像,system.img是主要文件系统的映像,这是一个比较大的文件,data.img是数据内容映像。这几个image文件是运行时真正需要的文件。

来自:http://elansoft.blogbus.com/logs/78647294.html

分享到:
评论

相关推荐

    刷机原理01 update.zip包目录结构

    update.zip包目录结构 boot.img是更新boot分区所需要的文件。这个boot.img主要包括kernel+ramdisk。 system/目录的内容在升级后会放在系统的system分区。在Android源码编译后out/target/product/generic/system/。

    Android String Tool(Android工程的字串工具)

    2)修改字串表stringTable.xls后,可以生成xml文件放在./out/Project目录中,并且保持改资源文件在原始工程中的目录结构。 3)创建一种新语言,可以通过指定新语言(例如values-new)模板(例如values-es)和要使用...

    新版Android开发教程.rar

    ----------------------------------- Android 编程基础 1 封面----------------------------------- Android 编程基础 ...• SQLite SQLite SQLite SQLite 用作结构化的数据存储 • 多媒体支持 包括常见的音频、视频和...

    一本android的好书beginning android 2 和 源码

    本书的目录结构如下: Chapter 1: The Big Picture Challenges of Smartphone Programming What Androids Are Made Of Stuff at Your Disposal ■Chapter 2: Projects and Targets Pieces and Parts Creating a ...

    Android C++高级编程:使用NDK_Onur Cinar, 于红PDF电子书下载 带书签目录 完整版

    Android C++高级编程:使用NDK_Onur Cinar, 于红PDF电子书下载 带书签目录 完整版 原书名:Pro Android C++ with the NDK 原出版社: Apress 作者: (美)Onur Cinar 译者: 于红 佘建伟 冯艳红 丛书名: 移动开发...

    Android Studio4.0解决Gradle下载超时问题

    当引入或者新建一个项目的时候,在引入gradle版本号的时候会报连接超时的错误:Gradle sync failed: Connection timed out: connect. If you are behind an HTTP········ 解决方法 一、更改项目中gradle...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    1.4 本文的结构安排 8 第二章 多窗口类浏览器设计 11 2.1 多窗口类浏览器需求分析 11 2.1.1 Activity简介 11 2.1.2 Fragment简介 11 2.1.3 多窗口类浏览器需求 12 2.2 多窗口浏览器模式的实现机制 12 2.2.1安卓...

    android apksigner zip解析

    zip文件格式分为zip文件格式由文件数据区、中央目录结构,中央目录结束标志组成。其中中央目录结束节又有一个字段保存了中央目录结构的偏移。 中央目录结束标志解析: 中央目录结束标志数据结构 struct EndLocator { ...

    Android 源码如何编译调试

     1、android的文件系统结构是怎样的,我们安装的程序放在那里?  编译android源码之后,在out/target/product/generic一些文件:  ramdisk.img、system.img、userdata.img、 system、 data、root  其中, system...

    android_device_samsung_galaxy5

    android_device_samsung_galaxy5 ... out/target/product/galaxy5/cm-VERSION-DEVICENAME.zip 请参阅以获取构建说明。 有关此 Github 组织及其结构的更多信息,请 免责声明 CyanogenMod 不支持所有这些设

    高焕堂<应用框架原理与程序设计>源代码(Eclipse)

    在Ex36CModel目录下创建Application.mk文件,并创建jni目录,该目录下包含Android.mk,HalfAdder.c等文件,目录结构如下 (关于MK文件的语法请看NDK安装目录docs下的ANDROID-MK.TXT,或者网上查找相关资料) Ex36C...

    Android代码-JS-Sorting-Algorithm

    排序算法是《数据结构与算法》中最基本的算法之一。 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问...

    EasySocket:一个轻量级的Android端Socket框架,可快速实现客户端和服务端之间的TCP长连接通讯,兼容于各种消息协议,框架的特色之一是可以实现Socket的消息回调功能

    EasySocket README内容将不再更新,请到博客阅读最新的框架说明! 博客地址: EasySocket的初衷是希望使Socket...3、消息结构使用的协议为:包头+包体,其中包体存储要发送的消息实体,而包头则存储消息的长度、类型

    android_device_samsung_cooper

    android_device_samsung_cooper ... out/target/product/cooper/cm-VERSION-DEVICENAME.zip 请参阅以获取构建说明。 有关此 Github 组织及其结构的更多信息,请 免责声明 CyanogenMod 不支持所有这些设备,

    android_device_lge_p500

    android_device_lge_p500 LGE Optimus One LGE-P500 的设备配置 ... out/target/product/p500/cm-VERSION-DEVICENAME.zip 请参阅以获取构建说明。 有关此 Github 组织及其结构的更多信息,请 免责声明 Cyan

    android_device_samsung_tass

    android_device_samsung_tass... out/target/product/tass/cm-VERSION-DEVICENAME.zip 请参阅以获取构建说明。 有关此 Github 组织及其结构的更多信息,请 免责声明 CyanogenMod 不支持所有这些设备,因为它们使用旧的

    Security_Checking_Android_Apps_with_Silicon.pdf

    由于AST过大,所以在符号执行的过程中会在内存中占用越来越多的内存,但是很多AST只会被用一次,所以可以使用类似操作系统中的方法——将不用的数据结构Swap out到磁盘上,如果下次仍然需要则再Swap in到内存即可。...

    用FunDapter给列表添加结构化的数据

    FunDapter takes the pain and hassle out of creating a new Adapter class for each ListView you have in your Android app.It is a new approach to custom adapter creation for Android apps. You get free ...

    zxing.java源码解析-Android_Interview:Android_面试

    数据结构与算法: ; android相关: ; java 基础 ; 面试要求总结: 2.Activity的启动模式以及使用场景 (1)manifest设置,(2)startActivity flag 此处延伸:栈(First In Last Out)与队列(First In First Out)的...

    Morning-Sign-Out:任何人都可以理解的生物医学杂志morningsignout.com的应用

    晨签这是Morning Sign Out应用程序的Android Studio项目文件。 是表示当前最新进度的google链接,但是此自述文件是深入的说明。Android应用程序的结构该应用程序的当前结构包括3页。 首页将包含文章类别和最新出版物...

Global site tag (gtag.js) - Google Analytics