build: remove expo.dev/EAS dependency, add local Android build pipeline

- Delete eas.json and strip extra.eas.projectId from app.json
- Add plugins/withAndroidReleaseSigning.js — Expo config plugin that injects
  release signingConfig into the generated build.gradle during expo prebuild
- Add build-apk.sh — self-contained build script (expo prebuild + Gradle)
  Reads keystore credentials from ~/.config/postiz-mobile/signing.env
  Outputs APK/AAB to dist/, wipes credentials from gradle.properties after build
- Add install-android-sdk.sh — one-time Android SDK cmdline-tools bootstrap
- Remove unused expo-task-manager dependency
- Update .gitignore: android/, ios/, static-build/ excluded (generated)

Build workflow:
  1. eas credentials --platform android  # export keystore once
  2. ./install-android-sdk.sh            # first time only
  3. ./build-apk.sh                      # → dist/postiz-mobile-YYYYMMDD-HHMM.apk

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-07 20:32:18 +02:00
parent 7aacb9a53e
commit 20226caef4
7 changed files with 206 additions and 32 deletions
+5 -1
View File
@@ -9,16 +9,20 @@ dist/
web-build/
expo-env.d.ts
# Native
# Native — generated by expo prebuild, never committed
ios/
android/
*.orig.*
*.jks
*.keystore
*.p8
*.p12
*.key
*.mobileprovision
# Local build output
static-build/
# Metro
.metro-health-check*