Files
android-ci-demo/.gitea/workflows/android-build.yml
T
2026-06-02 12:36:01 +08:00

68 lines
2.0 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: Android Build
on:
push:
branches: [ master, main ]
pull_request:
branches: [ master, main ]
workflow_dispatch:
jobs:
build:
runs-on: android
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Java 17
run: |
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk
export PATH=$JAVA_HOME/bin:$PATH
echo "JAVA_HOME=$JAVA_HOME" >> $GITHUB_ENV
echo "=== 使用 Java 17 ==="
java -version
- name: Build Debug APK
run: |
# 验证环境
echo "=== 环境检查 ==="
java -version
gradle --version
# 设置 Android SDK 环境变量
export ANDROID_HOME=/opt/android-sdk
export ANDROID_SDK_ROOT=$ANDROID_HOME
export PATH=$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/build-tools/34.0.0:$PATH
# 使用 ARM64 版本的 aapt2(来自 lzhiyong/android-sdk-tools
export CUSTOM_AAPT2_PATH=/usr/bin/aapt2
echo "=== 使用 ARM64 aapt2 (35.0.2) ==="
# 创建 gradle.properties 配置
echo "org.gradle.jvmargs=-Xmx2g -XX:+UseG1GC -XX:MaxMetaspaceSize=512m" >> gradle.properties
echo "org.gradle.daemon=false" >> gradle.properties
# 使用自定义 aapt2 路径
echo "android.aapt2FromMavenOverride=$CUSTOM_AAPT2_PATH" >> gradle.properties
# 直接使用系统 Gradle 8.14.4 编译(使用 ARM64 aapt2
echo "=== 开始编译 ==="
gradle assembleDebug \
--no-daemon \
--stacktrace \
--no-watch-fs \
--no-configuration-cache \
--no-build-cache \
-Dfile.encoding=UTF-8
# 验证输出
echo "=== 编译完成 ==="
ls -lh app/build/outputs/apk/debug/
- name: Upload APK
uses: actions/upload-artifact@v3
with:
name: app-debug
path: app/build/outputs/apk/debug/app-debug.apk
retention-days: 7