September 19, 2014 / 7:48am Now I basically copied the following from:
StackFlow .
I did, however, make some changes. The source dirs are 'not' capitalized and I added the ones he left out at the 'top level'.
Plus, these are primarily for the HTC
ReZound.
Now then, the reason this came about was/is; as I have been researchng for all the imformation I can get, so that I can fix the
Camcorder problem, I have been encountering 'other' interesting info. So, I decided to create this. -But then- I thought, "Maybe it
has already been done." That is when I found the following and decided to use it as a base. I will go down in the dir levels as far
as I have to... in order to keep the info relevant.
- abi - Minimal C++ Run-Time Type Information support
- android -
- art -
- bionic - the C-runtime for Android. Note that Android is not using glibc like most Linux distributions. Instead the
c-library is called bionic and is based mostly on BSD-derived sources. In this folder you will find the source for the
c-library, math and other core runtime libraries.
- bootable - boot and startup related code. Some of it is legacy, the fastboot protocol info could be interesting since
it is implemented by boot loaders in a number of devices such as the Nexus ones.
- build - the build system implementation including all the core make file templates. An important file here is the
envsetup.sh script that will help you a lot when working with the platform source. Running this script in a shell will
enable commands to setup environment variables, build specific modules and grep in source code files.
- cts - the compatability tests. The test suite to ensure that a build complies with the Android specification.
- dalvik - the source code for the implementation of the Dalvik Virtual Machine
- developers -
- development - projects related to development such as the source code for the sdk and ndk tools. Normally not a folder
you touch when working with the platform for a target.
- device - product specific code for different devices. This is the place to find hardware modules for the different
Nexus devices, build configurations and more.
- docs
- external - contains source code for all external open source projects such as SQLite, Freetype and webkit.
- frameworks - this folder is essential to Android since it contains the sources for the framework. Here you will find
the implementation of key services such as the System Server with the Package- and Activity managers. A lot of the mapping
between the java application APIs and the native libraries is also done here.
- av -
- cmds -
- stagefright -
stagefright is mostly related to codecs/ video rendering
Which includes local playback and http streaming
- hardware - hardware related source code such as the Android hardware abstraction layer specification and implementation.
This folder also contains the reference radio interface layer (to communicate with the modem side) implementation.
- (kernel) - not part of the default source download but you can get access to this code either by downloading it manually
or by adding the repository to the repo tool. Contains the sources for the Android version of the Linux kernel.
- libcore - Apache Harmony
- libnativehelper - Helper functions for use with JNI
- ndk - Native Development Kit
- out - the build output will be placed here after you run make. The folder structure is out/target/product/. In the
default build for the emulator the output will be placed in out/target/product/generic. This is where you will find
the images used by the emulator to start (or to be downloaded and flashed to a device if you are building
for a hardware target).
- packages - contains the source code for the default applications such as contacts, calendar, browser.
- pdk - Platform Development Kit
- prebuilt - contains files that are distributed in binary form for convenience. Examples include the cross compilations
toolchains for different development machines.
- prebuilts - Replacement for prebuilt
- sdk - Software Development Kit
- system - source code files for the core Android system. That is the minimal Linux system that is started before the
Dalvik VM and any java based services are enabled. This includes the source code for the init process and the default
init.rc script that provide the dynamic configuration of the platform
- tools - Various IDE tools
- vendor -
- vigor -
Comments...