added some basic dir infos in source

This commit is contained in:
PROPGSP
2025-06-23 19:16:10 +05:30
parent de5c6bd70e
commit a55d8043ea
3 changed files with 79 additions and 3 deletions

View File

@ -210,10 +210,11 @@ Depending on the branch or target (like Pixel or emulator), you might also see:
- **Purpose:** Hosts the source code for system apps and UI components.
- **Key Examples:**
- `Settings/`, `SystemUI/`, `Launcher3/`
- **Why it matters:** This is where things like the lock screen, Quick Settings, and launcher behavior live.
- **Why it matters:** This is where things like the lock screen, Quick Settings, and launcher behavior live. You can add most required apps that you want to be preloaded.
@ -228,10 +229,83 @@ Depending on the branch or target (like Pixel or emulator), you might also see:
### 16. `prebuilts/` Precompiled Tools
- **Purpose:** Tools and binaries that dont need to be built from source (e.g., clang, aapt).
You can also make or modify and use your it as you wish but its kinda hardcoding skills needed i recommend to stick with aosp ones as they are stable.
- **Structure:**
- `clang/`, `gcc/`, `sdk/`, `tools/`
- **Why it matters:** These speed up builds and ensure consistent toolchains.
- **Why it matters:** These speed up builds and ensure consistent toolchains.
### 17. `sdk/` Android SDK
- **Purpose:** Contains parts of the Software Development Kit used by app developers.
- **Key Components:**
- APIs, emulator images, tools like `aapt`, `dx`, and more.
- **Why it matters:** This is how Android app devs build, package, and test their apps using the platform youre modifying.
### 18. `system/` Core Android System
- **Purpose:** One of the *most important* folders — includes Androids `init`, core utilities, security policies, and daemon logic.
- **Key Components:**
- `core/`: Native system components.
- `sepolicy/`: SELinux rules for enforcing mandatory access control.
- `init/`: The native `init` process implementation.
- **Why it matters:** Everything from system service spawning to filesystem mounting begins here.
### 19. `test/` Unit & Integration Testing
- **Purpose:** Used for testing Android components at the system level.
- **Includes:**
- JUnit-based unit tests, integration frameworks, shell test runners.
- **Why it matters:** Ensures reliability when changes are made to core components.
### 20. `toolchain/` Compiler Infrastructure
- **Purpose:** Holds source and configs for GCC/Clang-based toolchains.
- **Why it matters:** You might not need to edit this often, but it defines the compilers used when building native code.
### 21. `tools/` Build Tools and Utilities
- **Purpose:** Miscellaneous tools used for code analysis, linting, SDK packaging, etc.
- **Notable Subdirs:**
- `repohooks/`, `lint/`, `apkzlib/`
- **Why it matters:** Improves code quality and build consistency across the platform.
### 22. `vendor/` Proprietary Vendor Code
- **Purpose:** Non-open-source components and binaries provided by chipset vendors or OEMs.
- **Why it matters:** The bridge between AOSP and real hardware. If you want to port Android to a new device, youll need matching vendor blobs here.
### (Optional) `product/`, `vndk/`, `common/`, `soong/`
- **Seen in some branches or manifests.**
- `product/`: Used for `/product` partition overlays.
- `vndk/`: Vendor Native Development Kit under Project Treble.
- `common/`: Shared code across multiple device platforms.
- `soong/`: Standalone directory for the Soong build system, in some branches.
Mostly this is much you learnt is enough for now but you might need to learn the much deep inside each folders when it comes to customizing, but no worries i will take care of it. I will also tell you how to customize of things and behaviours later on upcoming chapters. Stay Tuned!