Skip to content
This repository was archived by the owner on May 25, 2026. It is now read-only.

Android Release (Public Beta) #11

Android Release (Public Beta)

Android Release (Public Beta) #11

Workflow file for this run

name: Android Release (Public Beta)
on:
workflow_dispatch:
inputs:
version:
description: 'Release version (e.g., v1.0.0-beta)'
required: true
type: string
jobs:
release:
runs-on: ubuntu-22.04
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
fetch-depth: 0 # Full history for changelog
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
distribution: "temurin"
java-version: "21"
- name: Get JRE21
uses: dawidd6/action-download-artifact@v9
with:
workflow: build.yml
path: app_pojavlauncher/src/main/assets/components/jre-21
workflow_conclusion: completed
repo: AngelAuraMC/angelauramc-openjdk-build
branch: buildjre17-21
name: jre21-pojav
- uses: gradle/actions/setup-gradle@v4
with:
validate-wrappers: false
gradle-version: "8.11"
cache-read-only: false
gradle-home-cache-includes: |
caches
notifications
jdks
gradle-home-cache-excludes: |
caches/build-cache-1
caches/*/gc.properties
- name: Patch MobileGlues for ARM-only build
run: |
# Skip x86/x86_64 builds for faster CI (only ARM devices are supported)
sed -i 's/ndkVersion = "27.3.13750724"/ndkVersion = "27.3.13750724"\n ndk {\n \/\/ Only build for ARM architectures (skip x86\/x86_64 which are for emulators)\n abiFilters += listOf("arm64-v8a", "armeabi-v7a")\n }/' MobileGlues/build.gradle.kts
- name: Determine Version
id: version
run: |
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
VERSION="${{ inputs.version }}"
else
VERSION="${GITHUB_REF#refs/tags/}"
fi
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "Release version: $VERSION"
- name: Build JRE JAR files
run: |
./scripts/languagelist_updater.sh
mkdir -p out
# Build JRE JAR files (security manager, etc...)
gradle :jre_lwjgl3glfw:build --build-cache
- name: Build Release APK
env:
VERSION_OVERRIDE: ${{ steps.version.outputs.version }}
run: |
# Build the launcher with explicit version
gradle :app_pojavlauncher:assembleRelease --build-cache
- name: Rename APK
run: |
mv app_pojavlauncher/build/outputs/apk/release/app_pojavlauncher-release.apk out/KnightLauncher-${{ steps.version.outputs.version }}.apk
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.version.outputs.version }}
name: KnightLauncher Android ${{ steps.version.outputs.version }}
body: "🎮 Play Spiral Knights on Android!"
files: |
out/KnightLauncher-${{ steps.version.outputs.version }}.apk
draft: false
prerelease: true
generate_release_notes: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}