fix(ci): 只编译 arm64 APK 并修复构建问题
Some checks failed
Frontend CI / ota-android (push) Successful in 11m18s
Frontend CI / build-android-apk (push) Failing after 7m49s
Frontend CI / build-and-push-web (push) Successful in 5m19s

This commit is contained in:
2026-03-17 23:18:07 +08:00

View File

@@ -97,6 +97,10 @@ jobs:
runs-on: ubuntu-latest
container:
image: reactnativecommunity/react-native-android:latest
env:
GRADLE_OPTS: "-Dorg.gradle.daemon=false -Dorg.gradle.parallel=false -Dorg.gradle.workers.max=1 -Xmx4g -XX:MaxMetaspaceSize=1g"
_JAVA_OPTIONS: "-Xmx4g -XX:MaxMetaspaceSize=1g -XX:+UseG1GC"
NODE_ENV: "production"
permissions:
contents: read
steps:
@@ -121,11 +125,30 @@ jobs:
- name: Generate Android native project
run: npx expo prebuild --platform android --non-interactive
- name: Configure Gradle
run: |
cd android
cat > gradle.properties << EOF
org.gradle.daemon=false
org.gradle.parallel=false
org.gradle.configureondemand=false
org.gradle.workers.max=1
org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError
android.enableJetifier=false
android.useAndroidX=true
hermesEnabled=true
reactNativeArchitectures=arm64-v8a
EOF
# Fix hermesEnabled in build.gradle
sed -i 's/def hermesEnabled = findProperty("hermesEnabled")/def hermesEnabled = findProperty("hermesEnabled") ?: "true"/' app/build.gradle || true
grep -n "hermesEnabled" app/build.gradle || echo "hermesEnabled not found in build.gradle"
- name: Build Android release APK (arm64 only)
run: |
cd android
chmod +x gradlew
./gradlew :app:assembleRelease -PreactNativeArchitectures=arm64-v8a --no-daemon
./gradlew :app:assembleRelease -PreactNativeArchitectures=arm64-v8a --max-workers=1
- name: Upload APK artifact
uses: actions/upload-artifact@v3