feat(android): add Android release workflow and shuffle UI improvements
Android Release / Build signed release APK (push) Canceled after 40m19s
Android Release / Build signed release APK (push) Canceled after 40m19s
Adds a new Android release workflow to sign and publish APKs when tags are pushed. Also enhances wallpaper shuffle by tracking seen IDs to reduce repeats. UI changes in App.tsx introduce lazy loading for the gallery and improved navigation/history handling. - Add Android signing workflow with keystore secrets - Track shuffle seen IDs to avoid image repeats - Enable gallery lazy loading via sentinel and observer
This commit is contained in:
@@ -47,6 +47,36 @@ npm run tauri android dev
|
||||
|
||||
Der native Android-Code liegt als lokales Tauri-Plugin in `plugins/android`. Er wird beim Android-Build automatisch eingebunden.
|
||||
|
||||
## Signierte Android-Releases mit Gitea Actions
|
||||
|
||||
Der Workflow `.gitea/workflows/android-release.yml` baut bei Tags wie `v0.1.0`
|
||||
eine signierte Universal-APK. Der Tag muss der Version in
|
||||
`src-tauri/tauri.conf.json` mit vorangestelltem `v` entsprechen. Der Workflow
|
||||
kann außerdem manuell über die Actions-Oberfläche gestartet werden.
|
||||
|
||||
In den Repository-Einstellungen unter **Settings → Actions → Secrets** müssen
|
||||
folgende Secrets angelegt werden:
|
||||
|
||||
- `ANDROID_KEYSTORE_BASE64`: der Base64-kodierte Inhalt des Release-Keystores
|
||||
- `ANDROID_KEYSTORE_PASSWORD`: Passwort des Keystores
|
||||
- `ANDROID_KEY_ALIAS`: Alias des Signaturschlüssels
|
||||
- `ANDROID_KEY_PASSWORD`: Passwort des Signaturschlüssels
|
||||
|
||||
Den Keystore-Inhalt für das Secret erzeugt man unter Linux mit:
|
||||
|
||||
```bash
|
||||
base64 -w 0 /sicherer/pfad/wallpaperflow-release.jks
|
||||
```
|
||||
|
||||
Nach erfolgreichem Lauf stehen `WallpaperFlow-release.apk` und die zugehörige
|
||||
SHA-256-Prüfsumme als Artefakt des Workflows bereit. Der Keystore darf nicht in
|
||||
das Repository eingecheckt werden und muss dauerhaft gesichert bleiben, da
|
||||
spätere Updates mit demselben Schlüssel signiert werden müssen.
|
||||
|
||||
Voraussetzung ist ein aktiver Gitea-Actions-Runner mit dem Label
|
||||
`ubuntu-latest`, Netzwerkzugriff auf npm, Rust und die Android-SDK-Server sowie
|
||||
ausreichend Speicher für Android SDK, NDK und Rust-Buildartefakte.
|
||||
|
||||
## Wichtige Android-Hinweise
|
||||
|
||||
- Android darf ungenaue Alarme im Ruhemodus verzögern. Der nächste Wechsel wird ausgeführt, sobald das Gerät wieder aktiv ist.
|
||||
|
||||
Reference in New Issue
Block a user