16 Commits

Author SHA1 Message Date
88e7d0cf6b Build: Android-Signierung hinzugefügt
All checks were successful
Android Build Final Fixed / build-android (push) Successful in 7m13s
2026-01-30 22:03:20 +01:00
6a11a0e0d7 Build: Android-Signierung hinzugefügt
All checks were successful
Android Build Final Fixed / build-android (push) Successful in 7m29s
2026-01-30 21:53:55 +01:00
f2d36798ba Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m23s
2026-01-30 21:45:18 +01:00
6b89925ab8 Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m13s
2026-01-30 21:35:00 +01:00
edefcab01c Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m10s
2026-01-30 21:26:41 +01:00
c41394e116 Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m12s
2026-01-30 21:17:46 +01:00
c6c00d1e4b Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m9s
2026-01-30 21:07:52 +01:00
c00e9c83c9 Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m15s
2026-01-30 20:42:59 +01:00
0f9d28de61 Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 2m7s
2026-01-30 20:36:43 +01:00
432185a92d Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 58s
2026-01-30 20:33:22 +01:00
89509418be Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m9s
2026-01-30 20:18:33 +01:00
bd7306ecf2 Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 2m26s
2026-01-30 20:15:23 +01:00
c5053e70db Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 0s
2026-01-30 20:14:02 +01:00
c744f3bcc5 Android Build CD/CI
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 5m38s
2026-01-30 19:51:39 +01:00
174da803ec Android Build CD/CI
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 2m29s
2026-01-30 19:43:07 +01:00
ca9e360bfd Android Build CD/CI
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 2m23s
2026-01-30 19:38:49 +01:00
2 changed files with 41 additions and 9 deletions

View File

@@ -1,5 +1,8 @@
name: Android Build Final Fixed name: Android Build Final Fixed
on: [push] on:
push:
branches: [main]
tags: ["v*"] # Triggert bei v0.1.0, v1.0, etc.
jobs: jobs:
build-android: build-android:
@@ -53,23 +56,51 @@ jobs:
export PATH="$HOME/.cargo/bin:$PATH" export PATH="$HOME/.cargo/bin:$PATH"
export ANDROID_HOME=$HOME/android-sdk export ANDROID_HOME=$HOME/android-sdk
export NDK_HOME=$ANDROID_HOME/ndk/25.1.8937393 export NDK_HOME=$ANDROID_HOME/ndk/25.1.8937393
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
# 1. Frontend mit Trunk bauen # 1. Frontend bauen
trunk build --release trunk build --release
# 2. Android APK bauen # 2. Android Build
if [ ! -d "src-tauri/gen/android" ]; then if [ ! -d "src-tauri/gen/android" ]; then
cargo-tauri android init cargo-tauri android init
fi fi
cargo-tauri android build --target aarch64 --apk true cargo-tauri android build --target aarch64 --apk true
# 3. APK manuell signieren
echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | tr -d '[:space:]' > keystore.b64
base64 -d keystore.b64 > release.keystore
UNSIGNED_APK=$(find src-tauri/gen/android/app/build/outputs/apk/universal/release -name "*-unsigned.apk" | head -n 1)
APKSIGNER=$(find $ANDROID_HOME/build-tools -name apksigner | sort -r | head -n 1)
$APKSIGNER sign --ks release.keystore \
--ks-type PKCS12 \
--ks-key-alias "${{ secrets.ANDROID_KEY_ALIAS }}" \
--ks-pass pass:"${{ secrets.ANDROID_KEYSTORE_PASSWORD }}" \
--key-pass pass:"${{ secrets.ANDROID_KEY_PASSWORD }}" \
--v4-signing-enabled true \
--out Marstemedia-Signed.apk \
"$UNSIGNED_APK"
echo "Signierung erfolgreich!"
env: env:
JAVA_HOME: /usr/lib/jvm/java-17-openjdk-amd64 JAVA_HOME: /usr/lib/jvm/java-17-openjdk-amd64
- name: Upload APK Artifact - name: Upload Artifact
# Downgrade auf v3, da v4 auf Gitea/GHES oft nicht funktioniert
uses: actions/upload-artifact@v3 uses: actions/upload-artifact@v3
with: with:
name: Xiaomi-App name: Marstemedia-Signed
# v3 unterstützt Wildcards etwas anders, daher geben wir den Pfad präzise an path: Marstemedia-Signed.apk
path: src-tauri/gen/android/app/build/outputs/apk/release/*.apk
- name: Create Gitea Release
if: startsWith(github.ref, 'refs/tags/')
uses: softprops/action-gh-release@v1
with:
files: Marstemedia-Signed.apk
# Gitea braucht manchmal explizit den Namen/Body
name: "Release ${{ github.ref_name }}"
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

1
.gitignore vendored
View File

@@ -2,3 +2,4 @@
/target/ /target/
/Cargo.lock /Cargo.lock
/.jj/ /.jj/
my-release-key.keystore