Build und Tests¶
Diese Seite dokumentiert ausschließlich die vorhandenen General-Audience-Buildpfade für veröffentlichte Android-Artefakte. Ein eigener General-Audience-Workflow ist nicht nötig: Beide etablierten Android-Workflows bieten den Input product_variant an.
Voraussetzungen¶
| Werkzeug | Version / Aufgabe |
|---|---|
| Node.js | 24 |
| npm | Installation der Abhängigkeiten und Skripte |
| JDK | 21 für Android-Builds |
| Android SDK | API 36 und Build-Tools 36.0.0 |
| Python | Erzeugung der Badge-Assets |
| Pillow | fest gepinnt in tools/badges/requirements.txt |
Android-Builds laufen auf dem lokalen Self-Hosted-Windows-Worker mit den Labels [self-hosted, windows, x64].
General-Audience-Web-Assets¶
Der Vite-Modus general setzt beim Build VITE_PRODUCT_VARIANT=general-audience.
Für die Android-Synchronisierung wird verwendet:
Danach darf kein gewöhnliches android:sync laufen: Es ersetzt die kopierten Web-Assets wieder durch die vollständige Recovery-Variante.
Debug-APK¶
Verwende den vorhandenen Workflow:
- Workflow:
Build Android debug APK - Datei:
.github/workflows/android-debug-apk.yml - Runner:
local - Produktvariante:
general-audience
Der lokale Job installiert die Abhängigkeiten, führt Smoke-, UI- und Release-Metadaten-Tests aus, synchronisiert die General-Audience-Web-Assets und baut die Debug-APK. Ein optionaler geschützter Update-Signierschlüssel wird verwendet, wenn er eingerichtet ist.
Die Artefakte landen auf dem Worker unter C:\SteadyBuilds\debug, darunter eine nummerierte Datei und:
Der entsprechende direkte lokale Befehl lautet:
Signierter Closed-Trial-Release¶
Verwende den vorhandenen Workflow:
- Workflow:
Build signed closed-trial release - Datei:
.github/workflows/android-closed-trial.yml - Runner:
local - Produktvariante:
general-audience
Der Release-Job benötigt die geschützten Signing-Secrets, führt Audit und vollständige Tests aus, synchronisiert die General-Audience-Web-Assets, baut die signierte APK und das AAB, prüft den minimierten LiteRT-JNI-Vertrag, verifiziert die APK-Signatur und schreibt SHA-256-Prüfsummen.
Die Artefakte landen unter C:\SteadyBuilds\release mit der Variante im Dateinamen, darunter:
Steady-1.0.0-alpha.19-signed-closed-trial-general-audience-latest.apk
Steady-1.0.0-alpha.19-signed-closed-trial-general-audience-latest.aab
Steady-1.0.0-alpha.19-signed-closed-trial-general-audience-latest-SHA256SUMS.txt
Validierungsgrenze¶
Die General-Audience-Version entfernt die eingebauten Profile für Alkohol und Pornografie/zwanghaftes Sexualverhalten, den SPAA-Bereich, Inventar, Lieblingstexte und 12-Schritte-Ressourcen. Das allgemeine Veränderungstracking, eigene Veränderungsbereiche, Counter, Analytics, Toolbox, Abzeichen und Companion bleiben enthalten. CI prüft, dass die Feature-Marker der Programmressourcen im erzeugten JavaScript-Bundle fehlen.
Beide Produktvarianten verwenden derzeit dieselbe Android-applicationId; die Installation einer Variante ersetzt die andere, während kompatible lokale Daten erhalten bleiben.
Workflow-Regel¶
Verwende zuerst diese beiden etablierten Workflows. Ein neuer Workflow ist nur für einen klar getrennten, dauerhaft eigenständigen Build-Anwendungsfall gerechtfertigt, den keiner der vorhandenen Workflows sinnvoll abbilden kann. Diese Lücke muss vor dem Anlegen dokumentiert werden.