Build: Android-Signierung hinzugefügt
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m13s
Some checks failed
Android Build Final Fixed / build-android (push) Failing after 7m13s
This commit is contained in:
@@ -67,13 +67,9 @@ jobs:
|
||||
# 3. APK manuell signieren
|
||||
echo "Verarbeite Keystore-Secret..."
|
||||
|
||||
# Wir speichern das Secret in einer Datei, um Probleme mit Shell-Argument-Limits zu vermeiden
|
||||
cat <<EOF > keystore.base64
|
||||
${{ secrets.ANDROID_KEYSTORE_BASE64 }}
|
||||
EOF
|
||||
|
||||
# Wir löschen ALLES, was kein valides Base64-Zeichen ist (Space, Newlines, etc.)
|
||||
tr -dc 'a-zA-Z0-9+/=' < keystore.base64 | base64 -d > release.keystore
|
||||
# Sicherstes Dekodieren: Erst White-Spaces weg, dann base64-binär-Output
|
||||
echo "${{ secrets.ANDROID_KEYSTORE_BASE64 }}" | tr -d '[:space:]' > keystore.b64
|
||||
base64 -d keystore.b64 > release.keystore
|
||||
|
||||
# Validierung der Dateigröße
|
||||
FILE_SIZE=$(stat -c%s release.keystore)
|
||||
@@ -84,6 +80,9 @@ jobs:
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Prüfe Keystore Integrität mit keytool..."
|
||||
keytool -list -v -keystore release.keystore -storepass "${{ secrets.ANDROID_KEYSTORE_PASSWORD }}" -alias "${{ secrets.ANDROID_KEY_ALIAS }}"
|
||||
|
||||
echo "Suche unsignierte APK..."
|
||||
UNSIGNED_APK=$(find src-tauri/gen/android/app/build/outputs/apk/universal/release -name "*-unsigned.apk" | head -n 1)
|
||||
if [ -z "$UNSIGNED_APK" ]; then
|
||||
@@ -95,6 +94,7 @@ jobs:
|
||||
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 }}" \
|
||||
|
||||
Reference in New Issue
Block a user