Android系统目录结构

Android系统编译后生成三个映像文件,都是用cpio打包,gzip压缩的。

  • ramdisk.img     文件系统,包含/system, /data, /bin等目录。kernel启动时负责初始化。
  • system.img      系统包和库文件,挂载到/system目录
  • userdata.img    用户数据,挂载到/data目录

Android系统目录结构

  • /init                     系统启动文件
  • /system
    • app               系统应用安装目录
    • bin                常用的系统本地命令(二进制),大部分是toolbox的链接(类似于嵌入式Linux中的busybox)
    • etc                系统配置文件,如hosts
    • font               字体目录
    • framework    Java平台架构核心库,jar包和odex优化的文件
    • lib                 系统底层共享库,.so库文件
    • xbin               不常用的系统管理工具,相当于linux的/sbin
    • media
      • audio  铃声,提示音等音频文件, .ogg

        • notifications    通知
        • ui                   界面
        • alarms            警告
        • ringtones        铃声
    • usr                 用户文件夹
      • keychars
      • keylayout
      • share
      • srec        配置
      • ......
    • vendor
    • build.prop      系统设置和变更属性
  • /etc  -->  /system/etc
  • /vendor --> /system/vendor
  • /dev                       存放设备节点文件
  • /proc                    全局系统信息
  • /data                 用户软件和各种数据
    • local/tmp  临时目录,无权限要求
    • app                普通程序安装目录
    • system
      • location     其中的location.gps记录最后的坐标,LocationManager.getLastKnownLocation()数据来自此处
    • data
      • <package_name>

        • files                    Context.getFilesDir() ,Context.openFileOutput() 获取的目录,应用安装目录下
        • cache                  Context.getCacheDir()  获取的目录,应用安装目录下,系统会自动在内存不足或目录大小达到特定数值时自动清理。
        • shared_pref        Context.getSharedPreferences() 建立的preferences文件(xml)存放目录
    • anr                应用发生ANR(Applicaiton is Not Responding)时,Android将问题点的堆栈写入到traces.txt文件中
    • location
      • gps       GPS location provider配置
    • property        其中persist.sys.timezone记录系统时区
  • /sdcard  -->/storage/emulated/legacy         SD卡的FAT32文件系统挂载到此目录

    • Android

      • data

        • <package_name>   应用的额外数据,应用卸载时自动删除。

          • files      Context.getExternalFilesDir()获取的目录。设置->应用->具体应用详情-> 清除数据  操作对象就是这个目录。
          • cache    Context.getExternalCacheDir()获取的缓存目录。设置->应用->具体应用详情-> 清除缓存  操作对象就是这个目录。

lost+found

yaffs文件系统固有的,类似回收站的文件夹。

ODEX

从apk中提取出来的可运行文件,即原apk中classes.dex通过dex优化生成的一个单独存放的dex文件。启动应用时不需要再从apk包中提取dex,速度更快。还可以删除apk包中的dex减少体积。缺点是体积变大,而且升级某个给Odex的应用可能会出现问题。

参考文档

http://blog.csdn.net/conowen/article/details/7251057

时间: 2024-11-07 16:10:23

Android系统目录结构的相关文章

android 系统目录及adb

进入android系统的目录方法为  adb shell anroid系统目录结构 主要分为 /system 和 data/ /system/app/     存放系统app /system/bin/ liunx 自带组件 /system/fonts/   文字 /data/app/   用户安装app /data/data/   app数据信息 /data/system/  手机的系统信息 ADB 命令 安装  adb install -r  .apk

《iOS应用逆向工程》学习笔记(二)iOS系统目录结构(部分)

首先下载个iFile,可以用来直观地查看iOS系统的目录结构. 下面记录一些关键的iOS目录结构: /var:"variable"的简写,存放一些经常更改的文件,例如日志.用户数据.临时文件等.其中/var/mobile/Applications下存放了所有App Store App. /Applications:存放所有的系统App和来自Cydia的App,不包括App Store App.越狱的过程把/Applications变成了一个符号链接,实际指向/var/stash/App

Linux系统目录结构介绍

参考博客: http://www.cnblogs.com/chensiqiqi/p/6243549.html 感谢原博主为我学习Linux指明方向!! linux目录:一切从“根”开始,“/”是所有目录的起点(定点) linux每个目录可以挂载在不同的设备(磁盘)上. 在逻辑上所有目录(包括目录下的子目录)都在最高级别的目录“/”下,根(“/”)目录是linux系统中所有目录的起始点(丁点),根下面的目录及目录的子目录是一个有层次的树状结构,很像一颗倒挂着的一颗大树,这和Windows系统按照硬

Android 源代码结构(转)

简介 在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试.但是,如果目标版本的SDK没有关联对应版本的源代码的话,就会提示你找不到源代码. 图:找不到Android源码的提示 我们都知道Android系统是一个开源工程,在网上可以下载到源代码.一般在网上搜索一下,就会找到各种下载源代码的方法,比如使用Git和Repo,android源代码下载的网址是http://android.git.kernel.org

Linux基础篇之四系统目录结构

Linux 系统目录结构 ·思考:文件是什么?众多文件如何有效的组织起来? 文件指的是存储空间存储的一段数据流,对数据可以做到按名存取:文件存储的路径映射,我们称之为目录,文件就是存储在这些目录中. 众多文件通过层级结构来进行存储,可以把这种层级结构称之为倒置的树状结构. 在linux系统中,系统目录的第一层结构,原始起点"/",也就是所谓的根是所有目录的父目录,这个目录下的所有文件都按照倒置的树状结构排列. ·Linux系统与windows系统的目录结构有何不同? Linux系统通过

Android目录结构(详解)

Android目录结构(详解) 下面是HelloAndroid项目在eclipse中的目录层次结构: 由上图可以看出项目的根目录下共有九个文件(夹),下面就这九个文件(夹)进行详解: 1.1src文件夹和assets文件夹: 每个Android程序都包含资源目录(src)和资产目录(assets),资源和资产听起来感觉没有多大差别,但在存储外部内容时用资源(src)比较多,其中它们的区别在于存放在资源(src)下的内容可以通过应用程序的R类进行访问,而存放在资产(assets)下的内容会保持原始

【Android的从零单排开发日记】之入门篇(三)——Android目录结构

本来的话,这一章想要介绍的是Android的系统架构,毕竟有了这些知识的储备,再去看实际的项目时才会更清楚地理解为什么要这样设计,同时在开发中遇到难题,也可以凭借着对Android的了解,尽快找出哪些模块和设计能够帮助解决该问题.但想了一下,这毕竟是入门篇,若没有实际项目开发经验的人看了之后肯定是一头雾水,所以就决定将其搁浅到大家熟悉Android之后再为大家介绍. 那么今天的主题是Android的目录结构,将系统架构比作人的骨骼架构的话,目录结构就像是人的各个器官,彼此功能各不相同,却能有序地

Android项目结构 以及体系结构

学习Android平台的人一般对Android的平台的应该有点认识 其它的就不多讲了 Android项目一般由以下几个部分构成 以上是一个简单的Android项目结构目录图 1. src  主要是 源文件目录 放置业务逻辑代码以及相应的UI代码 2. gen 下面有个R.java文件夹 该文件是建立Android项目自动生成的  该文件是只读文件 不可以更改 里面有很多静态 类名字与res的中资源文件一一对应 一般有attr ,drawable id raw layout string xml

Linux系统目录结构以及简单说明

Linux系统目录结构以及简单说明 linux目录图: / root --- 启动Linux时使用的一些核心文件.如操作系统内核.引导程序Grub等. home --- 存储普通用户的个人文件 ftp --- 用户所有服务 httpd samba user1 user2 bin --- 系统启动时需要的执行文件(二进制) sbin --- 可执行程序的目录,但大多存放涉及系统管理的命令.只有root权限才能执行 proc --- 虚拟,存在linux内核镜像:保存所有内核参数以及系统配置信息 1