2.3 KiB
FEDEO Mobile
Expo/React-Native-App für FEDEO. Der iOS-TestFlight-Build wird als Store-Build erstellt und enthält das JavaScript-Bundle. Metro wird dafür nicht benötigt.
Voraussetzungen
- Node.js
22.22.3verwenden, siehe.nvmrc. - EAS CLI installieren oder über
npx eas-cliausführen. - Apple Developer Zugriff für
software.federspiel.fedeo. - Produktions-API ist im EAS-Profil
testflightaufhttps://app.fedeo.de/backendgesetzt.
Entwicklung im Simulator
Wenn Port 8081 lokal belegt ist, Metro auf einem freien Port starten und den Simulator auf diesen Port setzen:
npx --yes -p node@22 node ./node_modules/expo/bin/cli start --dev-client --localhost --port 8082 --clear
xcrun simctl spawn booted defaults write software.federspiel.fedeo RCT_jsLocation '127.0.0.1:8082'
xcrun simctl spawn booted defaults write software.federspiel.fedeo RCT_packager_scheme 'http'
xcrun simctl terminate booted software.federspiel.fedeo
xcrun simctl launch booted software.federspiel.fedeo
TestFlight vorbereiten
Der Preflight prüft Lint, die mobilen Chat-Regressionstests und Expo Doctor. Für eine separate Typprüfung: npx tsc --noEmit.
npm run preflight:testflight
npm run build:ios:testflight
Nach erfolgreichem EAS-Build:
npm run submit:ios:testflight
Der TestFlight-Build nutzt das EAS-Profil testflight aus eas.json mit Store-Distribution und automatischer Buildnummer-Erhöhung.
Mobile Chats
Die Kommunikation zeigt interne Gruppen-, Projekt- und Direktchats sowie lokale und föderierte Unterräume mit bestehender Mitgliedschaft. Einladungen können angenommen oder abgelehnt werden. Leserechte, freigegebene Projektinformationen und wartende beziehungsweise fehlgeschlagene Zustellungen werden berücksichtigt. Bilder werden vor dem Senden verkleinert; Reaktionen funktionieren in beiden Chatarten.
Ausgeblendete Chats verwenden dieselben benutzer- und mandantenbezogenen Einstellungen wie das Web. Die App lädt sie beim Öffnen, beim Zurückkehren in den Vordergrund und während der Nutzung regelmäßig neu. Ausgeblendete Räume zählen nicht zum Chat-Badge und können über das Augensymbol wieder eingeblendet werden. Nachrichtenentwürfe bleiben beim Raumwechsel innerhalb derselben Sitzung erhalten und werden bei einem Sitzungswechsel verworfen.