added some basic dir infos in source
This commit is contained in:
@ -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 don’t 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 you’re modifying.
|
||||
|
||||
|
||||
|
||||
### 18. `system/` – Core Android System
|
||||
|
||||
- **Purpose:** One of the *most important* folders — includes Android’s `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, you’ll 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!
|
Reference in New Issue
Block a user