Android source code file structure

Source: Internet
Author: User

Android source code root folder structure:

The name of the folder is as follows:

 

Bionic: The Standard C library source file is used in android. This project will be compiled into static library files, which are only used when compiling other C Programs, will not be output to the final Device

Bootable: the source code of the secondary boot program, which corresponds to the content in the secondary boot partition of NAND Flash. This part of the code will not be included in the final system. img or boot. img file.

Build: the compilation system hub. make scripts and shell scripts under this directory form the compilation environment of android.

Cts: compatible test code. If android-based mobile phones require google authentication, they must undergo google's compatibility test. The purpose of the compatibility test is to ensure that the device has a standard SDK API

Dalvik: Source Code related to Java Virtual Machine in android. For more information about virtual machine internal design, see the instructions under the dalvik/docs directory.

Development: Related configurations or files used to develop android projects, such as some. classpath files.

Device: compile script files related to different devices. A device generally refers to a type of mobile phone, such as Htc magic, Nexus One, and Nexus S.

External: some external library files on which the android system depends, such as sqlite and opencore. Most of these files are c/c ++ code and a small number of java libraries.

Frameworks: Framework kernel source code, mainly composed of java files

Hardware: hardware Abstraction Layer (HAL) files defined by Android

Libcore: java libraries on which the Dalvik virtual machine depends, such as HashMap and ArrayList. These libraries and Dailvik jointly form the java Runtime Environment of dailvik.

Ndk: Native Development Kit, that is, the relevant files required for compiling NDK

Packages: Some system applications in Android, such as Contacts and Phone

Prebuilt: Compile the required program files, including ARM compilers on different platforms.

Sdk: related files required for compiling the SDK

System: Some system tool programs required for Linux at the underlying Android level. These programs mainly run on adb and logcat.

Tools: some other auxiliary tools, currently only one java project named tradefederation

Vendor: together with the program in the device directory, it defines the private files contained by a device. The difference between it and the device directory is that device mainly defines the special files required by different devices, but it is open-source, while the files contained in vendor are generally target files, but not open-source files.

 

Android source code \ out directory structure:

There is a system directory under out \ target \ product \ generic \ (if the directory does not contain generic, it is under the project name directory, such as the wtxxxxx of mtk). Its contents are described as follows:

\ System \ app
This is mainly used to store applications that are routinely downloaded. You can see that all files end with the APK format. The programs in this folder are the default components of the system, the software you installed will not appear here, but in the \ data \ folder.
\ System \ app \ AlarmClock.apk alarm clock
\ System \ app \ Browser.apk Browser
\ System \ app \ Bugreport.apk Bug report
\ System \ app \ Calculator.apk Calculator

\ System \ bin
The files in this directory are all local programs of the system. From the bin folder name, we can see that the files are binary programs, which are mainly components of the Linux system:

\ System \ bin \ am
\ System \ bin \ app_process system process
\ System \ bin \ dalvikvm Dalvik VM host
\ System \ bin \ Alibaba-daemon system BUS monitoring
\ System \ bin \ debugadh Debugger
\ System \ bin \ debug_tool
\ System \ bin \ dexopt DEX Option
\ System \ bin \ dhcpcd DHCP server

\ System \ etc
From the folder name, the system configuration files are saved, such as the core configuration of the APN Access Point settings.
\ System \ etc \ apns-conf.xml APN Access Point configuration file
\ System \ etc \ AudioFilter.csv audio filter configuration file
\ System \ etc \ AudioPara4.csv
\ System \ etc \ bookmarks. xml bookmarks Database
\ System \ etc \ monitoring. conf bus monitoring configuration file

\ System \ fonts
Font folder, in addition to the standard font, bold, and italic, you can see that the largest file size may be a Chinese font, or some unicode font, from T-Mobile G1, we can clearly see that the display of Simplified Chinese is normal, among which DroidSansFallback. ttf File Size
DroidSans-Bold.ttf \ system \ fonts \
\ System \ fonts \ DroidSans. ttf
\ System \ fonts \ DroidSansFallback. ttf
\ System \ fonts \ DroidSansMono. ttf

\ System \ framework
The framework is mainly a number of core files. It can be seen from the suffix jar that it is a system platform framework.

\ System \ framework \ am. jar
\ System \ framework \ am. odex
\ System \ framework \ android. awt. jar AWT Library
\ System \ framework \ android. awt. odex

\ System \ lib
The lib directory stores the underlying system libraries, such as the Runtime Library of the platform.
\ System \ lib \ libaes. so
\ System \ lib \ libagl. so
\ System \ lib \ libandroid_runtime.so Android Runtime Library
\ System \ lib \ libandroid_servers.so system Service component
\ System \ lib \ libaudio. so audio processing
\ System \ lib \ libaudioeq. so EQ
\ System \ lib \ libaudioflinger. so audio filter
\ System \ lib \ libbluetooth. so Bluetooth component
\ System \ lib \ libc. so
\ System \ lib \ libcamera. so super camera component
\ System \ lib \ libcameraservice. so
\ System \ lib \ libcorecg. so
\ System \ lib \ libcrypto. so encryption component

\ System \ media
In addition to regular ringtones, there are also some system prompts for event music.
\ System \ media \ audio
\ System \ media \ audio \ alarms
\ System \ media \ audio \ notifications prompt
\ System \ media \ audio \ ringtones
\ System \ media \ audio \ ui interface operation event sound

\ System \ sounds
The default music test file has only one test. mid file for playing the test file.
\ System \ sounds \ test. mid
\ System \ usr
User folders, including sharing, keyboard layout, and time zone files.
\ System \ usr \ keychars
\ System \ usr \ keylayout
\ System \ usr \ share
\ System \ usr \ srec

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.