Zum Inhalt springen
WebViewGold Vibe Coding in den App Store
Deutsch
WebViewGold holen

Gemini CLI

Von Gemini CLI in den App Store und zu Google Play: GEMINI.md, Firebase Hosting und WebViewGold

Gemini CLI kann deine Web-App im Terminal bauen und deployen; WebViewGold macht aus der deployten URL native iOS- und Android-Apps. Dieser Guide gibt dir eine GEMINI.md, die jede Änderung store-sicher hält, einen Deploy-Weg über Firebase Hosting, einen Readiness-Prompt zum Einfügen und die Einstellungen für Config.swift und Config.java. Eine Änderung von 2026 vorweg: Google hat Privatnutzer von Gemini CLI auf Antigravity CLI umgestellt, prüfe also, welches Tool du tatsächlich nutzt.

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

Was du baust

Eine WebViewGold-App ist ein natives iOS- oder Android-Projekt, dessen Hauptbildschirm eine WebView ist, die auf deine Produktions-URL zeigt. Gemini CLI muss dafür nie Swift oder Kotlin erzeugen: Es arbeitet weiter am Web-Projekt, du deployst, und beide Store-Apps zeigen beim nächsten Start die neue Version. Die native Seite besteht aus einer kurzen Liste dokumentierter Optionen in Config.swift und Config.java, plus Icon, Name und Signierung.

Gemini CLI passt gut, weil es schon dort lebt, wo die Arbeit passiert. Es liest deine Dateien, schlägt Änderungen vor und führt Shell-Befehle aus (mit deiner Freigabe oder direkt über den Shell-Modus !), sodass dieselbe Session einen Layout-Bug beheben, den Build starten und die Firebase CLI aufrufen kann. Soll es auch die WebViewGold-Projekte sehen, füge ihren Ordner mit /directory add hinzu oder starte mit --include-directories, und halte die Signierung außer Reichweite.

Hast du in Firebase Studio angefangen (das Google auslaufen lässt: keine neuen Workspaces seit dem 22. Juni 2026, Abschaltung am 22. März 2027) oder einen Prototyp aus Google AI Studio exportiert, exportiere den Code in einen lokalen Ordner oder nach GitHub und mach hier weiter. Deine Backends für Firebase Auth, Firestore und App Hosting laufen unabhängig von diesen Editoren weiter. Willst du erst Tools vergleichen? Die Übersicht der KI-Coding-Agenten deckt jeden Agenten ab, für den wir Guides haben.

Eine GEMINI.md, die den Agenten store-bewusst hält

Gemini CLI lädt ~/.gemini/GEMINI.md plus jede GEMINI.md in deinem Workspace und seinen übergeordneten Ordnern, hängt sie aneinander und schickt sie mit jedem Prompt mit (Dokumentation). Führe /init aus, um aus deinem Code einen Entwurf zu erzeugen, und ergänze dann einen Abschnitt wie diesen. /memory show zeigt genau, was geladen wurde.

markdown
# Project context

## Native app context (WebViewGold)
- This web app also ships as iOS and Android apps built with WebViewGold. The apps
  load https://app.example.com in a WKWebView / Android WebView. Every deploy is live
  in both apps; only changes in ios/ or android/ need a new store build.
- Hosting: Firebase Hosting, static build in dist/. Deploy only when I ask, with
  `npm run build && firebase deploy --only hosting`.
- The apps send a custom user agent containing the token WebViewGoldApp.
  Branch on isNativeApp() in src/lib/native.ts, never on generic WebView sniffing.
- Native features are URL schemes handled by the wrapper (registerpush://,
  getonesignalplayerid://, shareapp:// ...). Use only schemes documented in
  https://www.webviewgold.com/llms-full.txt and keep a browser fallback.

## Store rules every change must respect
- Layout works from 320 px wide; fixed bars use env(safe-area-inset-*);
  tap targets at least 44 x 44 px; no hover-only controls.
- /privacy, /terms, /delete-account and the in-app Delete account action keep working.
- Sign in with Apple stays next to any other social login (Apple 4.8).
- No new web checkout for digital goods without asking me (Apple 3.1.1).
- No popup windows for sign-in or payment inside the app.
- Only publishable keys in client code. A Gemini API key, Stripe secret key or
  service account never goes into a VITE_ variable or into src/.

## Out of bounds
- Do not edit ios/ or android/ unless the task says so.
- Never touch signing, provisioning, keystores or the WebViewGold purchase code.

@./docs/store-checklist.md

Ich bin sehr glücklich, dass ich diese App gekauft habe! Extrem einfach und großartige Dokumentation. Ich stand in Kontakt mit dem Kundenservice, sie antworteten sehr schnell und sehr freundlich. Sie lösten meine Frage innerhalb eines Tages. 10/10 würde ich empfehlen.

Nelis Geiger · CodeCanyon

AGENTS.md und den Firebase-MCP-Server nutzen

Hast du schon eine AGENTS.md für Codex oder andere Agenten, oder planst du den Wechsel zu Antigravity CLI? Behalte eine einzige Datei und sag Gemini CLI über context.fileName in der .gemini/settings.json des Projekts, dass es sie lesen soll. Dieselbe Datei kann den Firebase-MCP-Server registrieren, der dem Agenten zusätzlich zu normalen Shell-Befehlen Firebase-Tools gibt (inklusive eines Deploy-Tools). Das AGENTS.md-Template und das CLAUDE.md-Template enthalten längere Regelsätze, die du übernehmen kannst.

json
{
  "context": {
    "fileName": ["AGENTS.md", "GEMINI.md"]
  },
  "mcpServers": {
    "firebase": {
      "command": "npx",
      "args": ["-y", "firebase-tools@latest", "mcp"]
    }
  }
}

Vom Terminal in den Store: der Workflow

Rechne mit einem Arbeitstag; Konten und Store-Reviews sind der langsame Teil.

  1. Die Web-App lokal fertigstellen

    Lass Gemini CLI wie gewohnt Features bauen, aber teste jeden Screen von Anfang an in Handy-Breite (375 px in der Gerätesymbolleiste deines Browsers). Bitte es früh, den Helper isNativeApp() anzulegen, damit spätere Prompts sich darauf verlassen können.

  2. Auf Firebase Hosting deployen

    Führe die einmalige Einrichtung unten selbst aus (firebase login öffnet einen Browser) und lass den Agenten dann Builds und Deploys mit deiner Freigabe ausführen. Deine Site läuft unter PROJECT_ID.web.app; verbinde in der Firebase-Konsole eine eigene Domain, bevor du die Apps baust, denn die URL wird in sie kompiliert. Serverseitig gerenderte Next.js- oder Angular-Apps gehören stattdessen auf Firebase App Hosting (Blaze-Tarif nötig).

  3. Den Store-Readiness-Prompt ausführen

    Füge den Prompt unten ein. Starte im Plan Mode (/plan), falls deine Version ihn anbietet, lies den Plan und lass ihn dann umsetzen. Aktiviere Checkpointing in den Einstellungen, damit /restore eine missglückte Änderung rückgängig machen kann.

  4. Nativen Mehrwert ergänzen

    Reviewer wenden Richtlinie 4.2 auf webbasierte Apps an. Push-Benachrichtigungen sind die übliche Antwort: Setze auf iOS askforpushpermissionatfirstrun auf false, rufe nach dem Onboarding registerpush:// auf und speichere dann die Subscription-ID aus getonesignalplayerid:// (oder getfirebaseplayerid://) im Nutzerprofil.

  5. WebViewGold konfigurieren

    iOS (Config.swift): host, webviewurl, useragent_iphone, useragent_ipad, Push-Schalter. Android (Config.java): HOST, HOME_URL, USER_AGENT, PUSH_ENABLED oder FIREBASE_PUSH_ENABLED. Die Tabelle weiter unten ordnet jede Einstellung zu.

  6. Bauen und einreichen

    Xcode und Android Studio, wenn du sie hast; ansonsten baut der Cloud Builder beide Apps im Browser und lädt sie zu App Store Connect und in die Play Console hoch. Lass Gemini CLI die Datenschutzangaben und Review-Notizen aus dem echten Code entwerfen, dann reichst du ein.

Firebase-Hosting-Befehle, die der Agent ausführen kann

Wähle in firebase init hosting deinen Build-Ordner (dist für Vite, build für Create React App) und beantworte die Frage nach dem Rewrite für Single-Page-Apps mit Ja, wenn du clientseitiges Routing nutzt.

bash
# einmalige Einrichtung (den Login selbst ausführen, er öffnet einen Browser)
npm install -g firebase-tools
firebase login
firebase init hosting

# bei jedem Release
npm run build
firebase deploy --only hosting

# temporäre Preview-URL, z. B. für einen Test-Build der App
firebase hosting:channel:deploy store-check --expires 7d

Der Store-Readiness-Prompt für Gemini CLI

Er verlangt zuerst einen Plan, weil mehrere Punkte (Auth, Zahlungen) deine Entscheidung brauchen, bevor sich Code ändert.

In Gemini CLI im Projekt-Root einfügen
Lies zuerst GEMINI.md. Diese Web-App erscheint über WebViewGold zusätzlich als native iOS- und Android-App; WebViewGold lädt unsere Firebase-Hosting-URL in einer WebView. Prüfe das Projekt und gib mir einen nummerierten Plan, bevor du irgendetwas änderst. Warte auf mein OK.

Prüfung:
1. Mobil: Viewport-Meta-Tag, kein horizontales Scrollen ab 320 px, Safe-Area-Padding am fixierten Header und an der Tab-Bar, 44-px-Tap-Targets, keine Menüs, die nur per Hover funktionieren.
2. Firebase Auth: Liste jede Anmeldemethode und jeden Aufruf von signInWithPopup auf (Popups sind in einer eingebetteten WebView unzuverlässig). Erkläre die WebView-tauglichen Optionen; stelle die Flows noch nicht um. Erinnere mich daran, unsere eigene Domain unter Authentication > Settings > Authorized domains einzutragen.
3. Sign in with Apple: Gibt es Google oder einen anderen Social Login, plane den Apple-Provider als gleichwertige Option ein.
4. Kontolöschung: eine Aktion "Konto löschen" in den Einstellungen, gestützt auf eine Callable Cloud Function oder eine Server-Route, die die Firestore-Dokumente, Storage-Dateien und den Auth-Eintrag des Nutzers löscht und ihn dann abmeldet. Dazu eine öffentliche Seite /delete-account.
5. Datenschutz: Routen /privacy und /terms, geschrieben auf Basis dessen, was der Code tatsächlich erhebt (Analytics, Crashlytics, Firestore-Felder, Drittanbieter-SDKs).
6. Security Rules: Melde Firestore- oder Storage-Regeln, die Zugriff ohne request.auth oder über Nutzergrenzen hinweg erlauben.
7. Secrets: Liste jeden Key in src/, in env-Dateien und in der Firebase-Konfiguration auf. Die Firebase-Web-Konfiguration ist erwartet; ein Gemini-API-Key, ein Stripe-Secret-Key oder eine Service-Account-Datei im Client-Code muss auf den Server.
8. Zustände: Lade-, Leer- und Fehlerzustände mit Wiederholen auf jedem Screen, der Daten lädt.
9. UI nur für die App: Ergänze isNativeApp() (User-Agent enthält WebViewGoldApp) und blende in der App "Lade unsere App herunter"-Banner, Builder-Badges und Cookie-Walls aus.
10. firebase.json: Bestätige den SPA-Rewrite und dass /privacy und /delete-account direkt mit HTTP 200 laden.

Nach meiner Freigabe: Setze in kleinen Commits um, führe nach jedem npm run build aus, deploye nie und schließe mit einer Liste dessen, was ich in der Firebase-Konsole, in App Store Connect und in der Play Console von Hand erledigen muss.

Wo welche Einstellung liegt

WasWeb-Projekt (Gemini CLI)WebViewGold iOSWebViewGold Android
Start-URLFirebase Hosting + eigene Domainhost, webviewurlHOST, HOME_URL
App-ErkennungisNativeApp() prüft auf das Tokenuseragent_iphone, useragent_ipadUSER_AGENT
Push über OneSignalregisterpush:// aufrufen (iOS), onesignalplayerid speichernkPushEnabled, oneSignalIDPUSH_ENABLED, OneSignal-IDs in build.gradle
Push über Firebase Cloud MessagingDie ID aus getfirebaseplayerid:// speichernkFirebasePushEnabled + deine GoogleService-Info.plistFIREBASE_PUSH_ENABLED + deine google-services.json
Injizierte VariablenIDs lesen, ohne vorher ein Schema aufzurufenautoInjectVariableAUTO_INJECT_VARIABLES

Stolperfallen speziell bei Gemini-CLI-Projekten

  • YOLO-Modus während eines Store-Passes. Wenn jede Aktion automatisch freigegeben ist, kann der Agent mitten in einem Refactoring firebase deploy gegen die Produktion ausführen. Lass Freigaben für Shell-Befehle an und deploye selbst.
  • Eine vergessene GEMINI.md weiter oben. Eine Datei in einem übergeordneten Ordner oder in ~/.gemini/ wird ebenfalls angehängt und widerspricht womöglich deinen Projektregeln. Prüfe /memory show einmal pro Projekt.
  • Ein Gemini-API-Key im Browser-Bundle, typisch für Prototypen, die aus Google AI Studio exportiert wurden. Jeder kann ihn von deiner Site auslesen. Leite Gemini-Aufrufe über eine Cloud Function; der Guide zu Secrets erklärt, welche Keys ausgeliefert werden dürfen.
  • Die App mit der web.app-Adresse bauen und später auf die eigene Domain wechseln. Das ist ein neuer Store-Build; hänge die Domain vorher an.
  • Eine Anmeldung, die auf der eigenen Domain in Safari funktioniert, aber in der App scheitert, weil die Domain in den Authorized domains von Firebase Auth fehlt oder weil Google Sign-in ein Popup öffnet. Die Firebase-Checkliste geht die Optionen durch.
  • Skripte und CI-Jobs, die gemini mit dem Login eines Privatkontos aufrufen. Sie funktionieren seit dem 18. Juni 2026 nicht mehr; stell sie auf einen kostenpflichtigen API-Key oder auf Antigravity CLI um.

Checkliste vor der Einreichung

  • /memory show listet nur die Kontextdateien auf, die du erwartest.
  • Der Produktions-Build läuft auf deiner eigenen Domain, und /privacy und /delete-account öffnen sich direkt, ohne Weiterleitung auf die Startseite.
  • Die Authorized domains von Firebase Auth enthalten die eigene Domain; die Anmeldung funktioniert in einem Test-Build der App.
  • Keine Firestore- oder Storage-Regel erlaubt read, write: if true.
  • Im Flugmodus erscheint der WebViewGold-Offline-Bildschirm statt einer leeren Seite.
  • Die Push-Berechtigung wird nach dem Onboarding abgefragt, nicht auf dem ersten Screen.
  • Der kostenlose App-Store-Readiness-Check meldet für deine URL keine Probleme.

Häufig gestellte Fragen

Gibt es Gemini CLI im November 2026 noch?

Ja, laut Google für Kunden von Gemini Code Assist Standard und Enterprise sowie mit kostenpflichtigen Gemini-API-Keys oder Zugangsdaten für die Gemini Enterprise Agent Platform. Kostenlose Einzelkonten und Abonnenten von Google AI Pro und Ultra wurden am 18. Juni 2026 auf Antigravity CLI umgestellt. Workflow und Kontextdateien in diesem Guide funktionieren mit beiden.

Soll ich die Kontextdatei GEMINI.md oder AGENTS.md nennen?

Beides funktioniert. GEMINI.md ist der Standard von Gemini CLI; AGENTS.md lesen Antigravity, Codex, Cline, Kiro und andere. Arbeitet mehr als ein Agent im Repository, schreib AGENTS.md und trag sie in context.fileName in .gemini/settings.json ein.

Muss ich auf Firebase hosten?

Nein. WebViewGold lädt jede HTTPS-URL, Vercel, Netlify, Cloud Run oder dein eigener Server funktionieren also genauso. Firebase Hosting ist einfach bequem, wenn deine App schon Firebase Auth und Firestore nutzt.

Kann Gemini CLI Config.swift und Config.java bearbeiten?

Ja. Füge den WebViewGold-Ordner mit /directory add hinzu und bitte es, zuerst die Konfigurationsdateien zu lesen und nur Werte zu ändern. Signierung, Keystores und Bundle-IDs behältst du in Xcode und Android Studio selbst in der Hand.

Lehnt Apple eine App ab, weil ein KI-Agent sie geschrieben hat?

Nein. Das Review schaut auf Verhalten, Vollständigkeit, Datenschutz und Zahlungen. Welches Tool den Code geschrieben hat, ist weder sichtbar noch relevant.

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.

Pakete auf der Hauptseite ansehen

Full Service

$698 pro Plattform $798

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.

Full-Service-Details Powered by WeSetupYourWebViewApp

Winter-Sale-Preise gültig bis 31. Dezember 2026.

Bereit, deine App zu veröffentlichen?

App Store & Google Play Genehmigungsgarantie – oder Geld zurück innerhalb von 14 Tagen

Lieber abgeben? Full Service: Wir konfigurieren, bauen und liefern innerhalb von 72 Stunden, ab $698 pro Plattform. Fragen? Chatte mit uns – 24/7.

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.