Firebase-App in den App Store und zu Google Play: die komplette Checkliste
Projekte aus Firebase Studio, Softgen und Databutton stützen sich auf Firebase Auth, Firestore, Storage und Hosting. All das läuft in WebViewGold, aber Login-Popups, der Apple-Provider, die Datenlöschung und die Datenschutzformulare brauchen bewusste Entscheidungen. Geh diese Liste durch, bevor du den ersten Build hochlädst.
Ab $109 einmalig pro Plattform, oder unser Team erledigt alles ab $698.
Genehmigungsgarantie – oder Geld zurück innerhalb von 14 Tagen
Kein Programmieren nötig
Einmalzahlung, kostenlose Updates
24/7 Support von echten Menschen
Made in Germany seit 2014 · ISO 27001
9:41
Deine App
Deine AppJetzt auf dem Smartphone
App Store · Google Play Freigegeben
1. Login: Popup, Redirect oder Helper?
Der meiste generierte Firebase-Code ruft signInWithPopup auf. In einem Desktop-Browser öffnet das ein zweites Fenster und gibt das Ergebnis zurück; in einer WKWebView oder Android-WebView hat das Popup keinen zuverlässigen Rückweg, also hängen Logins. Stell den Ablauf in der App auf signInWithRedirect um und verarbeite getRedirectResult beim Laden.
Der Redirect-Login hat auf Apple-Plattformen seinen eigenen Haken: WebKit blockiert Third-Party-Storage, daher kann die Standard-authDomain (yourproject.firebaseapp.com) die Sitzung auf dem Hin- und Rückweg verlieren. Die von Firebase empfohlene Lösung: Nutze deine eigene Domain als authDomain. Hoste die App auf Firebase Hosting unter deiner eigenen Domain, damit /__/auth/handler same-origin ist, und füge diese Domain unter Authentication → Settings → Authorized domains hinzu. Setze dann dieselbe Domain als Start-URL in WebViewGold.
Google als Provider bringt die bekannte WebView-Sperre mit („disallowed_useragent“). Der Social Login Helper von WebViewGold löst das: Setze google_login_helper_triggers in Config.swift und GOOGLE_LOGIN_HELPER_TRIGGERS in Config.java auf die Präfixe von accounts.google.com. Login per E-Mail und Passwort oder per E-Mail-Link braucht nichts davon.
2. Apple-Provider (Richtlinie 4.8)
Pflicht, sobald Google, Facebook oder ein anderer Login eines Drittanbieters angeboten wird.
Apple Developer Portal
Aktiviere Sign in with Apple für deine App ID, lege eine Services ID mit deiner authDomain als Website und https://YOUR-AUTH-DOMAIN/__/auth/handler als Return URL an und erstelle einen Sign-in-with-Apple-Key (.p8).
Firebase-Konsole
Authentication → Sign-in method → Apple: Trag Services ID, Apple Team ID, Key ID und den privaten Schlüssel ein. Firebase erzeugt das Client Secret für dich, also entfällt die halbjährliche Erneuerung, die manche andere Backends verlangen.
Code der Web-App
const provider = new OAuthProvider("apple.com"); provider.addScope("email"); provider.addScope("name"); signInWithRedirect(auth, provider). Gib dem Apple-Button dasselbe visuelle Gewicht wie dem von Google.
Nichts in WebViewGold zu konfigurieren
Der Ablauf über appleid.apple.com wird automatisch erkannt und verarbeitet. Teste auf einem echten iPhone über TestFlight; der Simulator ist kein verlässlicher Maßstab für OAuth-Redirects.
3. Löschung von Nutzerdaten
Beide Stores verlangen, dass Nutzer ihren Account in der App löschen können, und Google will zusätzlich eine Webseite für Löschanfragen.
Installiere die offizielle Firebase Extension „Delete User Data“. Sie entfernt die Dokumente, Realtime-Database-Knoten und Storage-Dateien des Nutzers unter den von dir konfigurierten Pfaden, sobald ein Auth-User gelöscht wird.
Button in der App: Rufe deleteUser(auth.currentUser) auf. Firebase verlangt dafür einen frischen Login, also authentifiziere den Nutzer vorher erneut (Passwortabfrage oder ein neuer OAuth-Redirect) und fang den Fehler auth/requires-recent-login sauber ab.
Alternative für komplexe Daten: eine aufrufbare Cloud Function, die mit dem Admin SDK Daten über mehrere Collections hinweg löscht und danach auth().deleteUser(uid) ausführt; die Extension räumt trotzdem auf, was du konfiguriert hast.
Eine öffentliche Seite /delete-account auf deiner Domain, die den Ablauf in der App erklärt und ein Kontaktformular anbietet; trag die URL in das Datensicherheitsformular der Play Console ein und erwähne die Löschung in deiner Datenschutzerklärung.
Großartige Arbeit! Ich habe noch nie etwas programmiert, aber ich konnte damit arbeiten. Einfach und schnell! Auch mit großartiger Hilfe von den Erstellern!
4. Firestore-Regeln, die vor Reviewern und Hackern bestehen
Generierte Projekte starten oft mit Regeln im Testmodus, die 30 Tage lang alles erlauben. Firebase schickt dir eine E-Mail, kurz bevor sie ablaufen, und danach bricht die App in der Produktion. Ersetze sie vor der Einreichung durch Regeln, die nur dem Besitzer Zugriff geben; hier ist eine minimale, gängige Form.
javascript
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
// Jeder Nutzer besitzt genau ein Profildokument
match /users/{uid} {
allow read, write: if request.auth != null && request.auth.uid == uid;
}
// Items gehören dem Nutzer, der sie angelegt hat
match /items/{itemId} {
allow read: if request.auth != null && resource.data.ownerId == request.auth.uid;
allow create: if request.auth != null && request.resource.data.ownerId == request.auth.uid;
allow update, delete: if request.auth != null && resource.data.ownerId == request.auth.uid;
}
// Alles andere ist standardmäßig verboten
}
}
5. Hosting, Push und Domains
Thema
Was zu tun ist
Seite von WebViewGold
Eigene Domain im Hosting
Firebase Hosting → Add custom domain, DNS-Einträge setzen, auf das Zertifikat warten. Nutze diese Domain als authDomain und als Site URL in den E-Mail-Vorlagen.
Start-URL in Config.swift / Config.java oder im Cloud Builder
Push: direkt über FCM
Registriere die iOS-Bundle-ID und den Android-Package-Name im Firebase-Projekt, lade GoogleService-Info.plist und google-services.json herunter und lade unter Cloud Messaging einen APNs-Key hoch.
kFirebasePushEnabled (iOS) und FIREBASE_PUSH_ENABLED (Android); optional firebaseTopic; das Geräte-Token steht nach getfirebaseplayerid:// als firebaseplayerid bereit. Doku: iOS-Push, Android-Push
Push: stattdessen OneSignal
Für Segmente und ein Kampagnen-Dashboard ohne Cloud Functions; läuft konfliktfrei neben Firebase.
6. Datensicherheit und App-Datenschutz für Firebase-Signale
Google vergleicht die SDK-Signale im Binary mit deinen Angaben; Apple erwartet, dass du alles angibst, was die App tut, Webinhalte eingeschlossen.
Firebase Auth: E-Mail-Adresse und Nutzer-ID, mit dem Nutzer verknüpft. Gib das unter „Personenbezogene Daten“ (Play) sowie „Kontaktinformationen“ und „Kennungen“ (Apple) an.
Nutzerinhalte aus Firestore und Storage: „App-Aktivitäten“ / „Nutzerinhalte“. Wenn Nutzer Fotos hochladen, gib das an.
FCM-Push: Das Geräte-Token zählt als Gerätekennung für die App-Funktionalität. Nutzt du stattdessen OneSignal, gilt dasselbe.
Google Analytics, falls deine Web-App es lädt: Nutzungsdaten für Analysezwecke; kein Tracking im Sinne von Apple, solange sie nicht mit Werbenetzwerken verknüpft werden. Crashlytics unter Android (TRACKING_EVENT): Absturzprotokolle und Diagnosedaten.
Muss ich die nativen Firebase-SDKs ins WebViewGold-Projekt einbauen?
Nein. Deine Web-App nutzt weiter das JavaScript-SDK. Native Firebase-Komponenten kommen nur für Push oder Crashlytics ins Spiel, und WebViewGold bringt sie hinter einem Config-Schalter mit.
Warum funktioniert der Google-Login in Chrome, aber nicht in meiner App?
Google blockiert OAuth in eingebetteten WebViews. Der Social Login Helper von WebViewGold öffnet den Google-Schritt in einem Fenster, das Google akzeptiert, und gibt das Ergebnis an deine App zurück.
Funktioniert die Offline-Persistenz von Firestore in der App?
Ja, IndexedDB ist in WKWebView und der Android-WebView verfügbar. Aktiviere trotzdem den Offline-Bildschirm von WebViewGold für den ersten Start, wenn noch kein Cache existiert.
Wie schicke ich einen Push an einen bestimmten Nutzer?
Speichere das Token aus getfirebaseplayerid:// (oder die OneSignal-Subscription-ID) im Firestore-Dokument des Nutzers und sende aus einer Cloud Function mit dem Admin SDK oder über die OneSignal REST API.
Drei Wege, deine App in die Stores zu bringen
Gleiches Ergebnis, unterschiedlich viel Arbeit auf deiner Seite. Alle drei kommen mit Genehmigungsgarantie und 24/7 Support von echten Menschen.
Selbst machen
$109 pro Plattform, einmalig
Die WebViewGold-Lizenz: ein fertiges Xcode- oder Android-Studio-Projekt. URL einfügen, Name und Icon setzen, Features einschalten, bauen und einreichen. Kostenlose Updates für immer.
Kein Mac, kein Xcode, kein Android Studio: Du konfigurierst im Browser, wir bauen beide Apps in der Cloud und übergeben sie an App Store Connect und die Play Console.
Schick uns deine URL und dein Icon. Unser Team konfiguriert, baut und liefert deine App innerhalb von 72 Stunden, White-Label, inklusive Quellprojekten. Beide Plattformen für $1,158.
Erstattungen erfolgen zu den in unseren FAQ genannten Bedingungen: eine nicht inhaltsbedingte Ablehnung durch Apple und/oder Google, geltend gemacht innerhalb von 14 Tagen nach dem Kauf.