# android SDK镜像 **Repository Path**: rtccn_mc/android-sdk ## Basic Information - **Project Name**: android SDK镜像 - **Description**: NDK r26+ 交叉编译 .so ~600MB SDK build-tools d8、aapt、zipalign、apksigner ~50MB SDK platforms android.jar 编译依赖 ~50MB JDK 8 javac 编译 .java ~100MB 镜像 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-09-05 - **Last Updated**: 2026-09-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android SDK 组件镜像 VUS 编译 APK 所需的 Android 开发环境,按「组件 / host 架构」组织。 - **All**:与宿主机架构无关(纯 Java / 平台库),任意 x86_64、aarch64 Linux/Android 宿主都能用。 - **\ 目录**(如 `linux-x86_64`):工具本身只能在该架构的宿主上运行(工具的 host 架构)。 > 重要:官方 NDK / Temurin JDK / build-tools 的 Linux 预编译只有 `linux-x86_64` 版,**没有 `linux-aarch64`**。 > 本仓库方案 = 中心打包服务器(x86_64) + arm 设备独立组件。arm64/Termux 设备请参考下文「手机端」说明。 ## 仓库分布 - **android-sdk**(本仓库):SDK 组件(platforms / cmdline-tools / build-tools)+ JDK8 + arm32/arm64 专用组件 - **android-ndk**(`gitee.com/rtccn_mc/android-ndk`):NDK 26.1(x86_64 host) + NDK 29(aarch64 / arm) ## 目录结构 ``` SDK/ All/ platforms.tar.gz android.jar + 平台资源(android-34,纯 Java,架构无关) cmdline-tools.tar.gz.000 sdkmanager 命令行工具(Java,架构无关,分卷) cmdline-tools.tar.gz.001 linux-x86_64/ build-tools.tar.gz d8 / aapt / aapt2 / zipalign / apksigner(含 native 可执行,host=x86_64) JDK/ linux-x86_64/ jdk8.tar.gz.000 Temurin 8(host=x86_64) jdk8.tar.gz.001 ``` ## Release 一览 ### sdk-v1(linux-x86_64 + All) | 附件 | 说明 | |---|---| | `platforms.tar.gz` | android.jar + 平台资源(android-34,All) | | `cmdline-tools.tar.gz.000/.001` | sdkmanager 命令行工具(All,2 分卷) | | `build-tools.tar.gz` | aapt/d8/zipalign/apksigner(x86_64) | | `jdk8.tar.gz.000/.001` | Temurin JDK8(x86_64,2 分卷) | ### sdk-v2-arm(arm32 + aarch64) 手机端/Termux 专用组件,宿主架构为 arm32 或 aarch64。 | 附件 | 架构 | 说明 | |---|---|---| | `ndk-multilib_29-1_all.deb` | arm32 | Termux NDK multilib deb 包 | | `ndk-sysroot_29-2_arm.deb` | arm32 | Termux NDK sysroot deb 包 | | `jdk8-arm32.tar.gz.000/.001` | arm32 | Zulu JDK8 ARM32(2 分卷) | | `jdk8-aarch64.tar.gz.000/.001` | aarch64 | Zulu JDK8 ARM64(2 分卷) | | `android-sdk-tools-static-arm.zip` | arm32 | SDK tools 静态编译(arm) | | `android-sdk-tools-static-aarch64.zip` | aarch64 | SDK tools 静态编译(aarch64) | ## 架构标注 | 组件 | host 架构 | 仓库 | 说明 | |---|---|---|---| | platforms(android.jar) | **All** | android-sdk | 纯 Java 类库,架构无关 | | cmdline-tools(sdkmanager) | **All** | android-sdk | 纯 Java,架构无关 | | build-tools | **linux-x86_64** | android-sdk | 含 native(aapt/aapt2/zipalign),按 host 区分 | | NDK 26.1 | **linux-x86_64** | android-ndk | 一次性产出 arm32/arm64/x86_64 `.so`;`*-android21-clang` 对应 minSdk 21 | | Temurin JDK8 | **linux-x86_64** | android-sdk | 与 NDK 同一宿主 | | NDK 29(aarch64) | **aarch64** | android-ndk | Termux 社区版 NDK | | NDK 29(arm) | **arm** | android-sdk | Termux ndk-multilib deb 包 | | Zulu JDK8 ARM32 | **arm32** | android-sdk | 手机端 JDK | | Zulu JDK8 ARM64 | **aarch64** | android-sdk | 手机端 JDK | | SDK tools 静态版 | **arm32/aarch64** | android-sdk | 手机端 build-tools 替代 | ## 使用方式(VUS 安装脚本) > gitee 裸 raw 对较大单文件需登录,故大组件改成 **Release 附件** 匿名直链下载: > - android-sdk Release `sdk-v1`:`https://gitee.com/rtccn_mc/android-sdk/releases/download/sdk-v1/<文件名>` > - android-sdk Release `sdk-v2-arm`:`https://gitee.com/rtccn_mc/android-sdk/releases/download/sdk-v2-arm/<文件名>` > - android-ndk Release `v26.1`:`https://gitee.com/rtccn_mc/android-ndk/releases/download/v26.1/<文件名>` > - android-ndk Release `v29-aarch64`:`https://gitee.com/rtccn_mc/android-ndk/releases/download/v29-aarch64/<文件名>` > (文件名见上表,带 `.000/.001…` 的是分卷) ### x86_64 桌面环境 1. 判断宿主机架构:`uname -m` → `x86_64` 取 `linux-x86_64`;否则仅能取 `All` 组件。 2. 下载各组件分卷并合并解压: ```sh curl -sL "…/releases/download/sdk-v1/cmdline-tools.tar.gz.000" -o c.000 curl -sL "…/releases/download/sdk-v1/cmdline-tools.tar.gz.001" -o c.001 cat c.000 c.001 > cmdline-tools.tar.gz tar xzf cmdline-tools.tar.gz -C ~/.vus/android/ ``` 3. NDK → 从 android-ndk Release `v26.1` 下载 8 卷,`cat` 合并后解压到 `~/.vus/android/` (得到 `ndk/26.1.10909125/`),与 `scripts/build_apk.sh` 的 `NDK` 路径对齐。 ### 手机端(arm32 / aarch64 / Termux) 1. 安装 Termux 基础环境。 2. 从 `sdk-v2-arm` 下载对应架构的组件: - **aarch64 设备**:`jdk8-aarch64.tar.gz.*` + `android-sdk-tools-static-aarch64.zip` - **arm32 设备**(如 Redmi 9A 32位系统):`jdk8-arm32.tar.gz.*` + `android-sdk-tools-static-arm.zip` 3. NDK 从 android-ndk 获取: - **aarch64**:下载 `v29-aarch64` release(4 分卷),`cat` 合并后 `tar xJf` - **arm32**:下载 `v29-arm` release,或从 `sdk-v2-arm` 取 `ndk-multilib_29-1_all.deb` + `ndk-sysroot_29-2_arm.deb`,在 Termux 中 `dpkg -i` 安装 4. 合并分卷:`cat file.tar.gz.* > file.tar.gz` 后 `tar xzf` 5. 设置 `JAVA_HOME` 指向解压后的 JDK 目录,`ANDROID_HOME` 指向 SDK 目录。 ## 分卷说明 - 单文件须 <100MB(Gitee 限制),大组件用 `split -b 90M -d -a 3` 分卷(`.000`、`.001`…)。 - 合并 = 按序号 `cat` 拼接后 `tar xzf`(或 `tar xJf` 对 `.tar.xz`)。 ## 手机端(arm64/Termux)编译说明 - 官方 Android SDK 无 arm64 预编译,手机端也可用 Termux 社区源: ```sh pkg install openjdk-17 android-sdk-build-tools ndk-* ``` (Termux 编译的 aarch64 host 工具链),可与本仓库 `SDK/All/platforms.tar.gz`(android.jar)混用。