Erste Schritte
-
Paket installieren
Terminal-Fenster npm i @capgo/capacitor-envTerminal-Fenster pnpm add @capgo/capacitor-envTerminal-Fenster yarn add @capgo/capacitor-envTerminal-Fenster bun add @capgo/capacitor-env -
Native Plattformen synchronisieren
Terminal-Fenster npx cap syncTerminal-Fenster pnpm cap syncTerminal-Fenster yarn cap syncTerminal-Fenster bunx cap sync
Konfigurationswerte deklarieren
Section titled “Konfigurationswerte deklarieren”Fügen Sie Schlüssel zur Capacitor-Konfiguration hinzu, damit sie in Ihre nativen Builds eingebettet werden. Sie können mehrere Konfigurationsvarianten (capacitor.config.prod.ts, capacitor.config.dev.ts, etc.) erstellen, um Werte pro Umgebung auszutauschen.
import { CapacitorConfig } from '@capacitor/cli';
const config: CapacitorConfig = { appId: 'com.example.app', appName: 'Example', webDir: 'dist', plugins: { Env: { API_URL: 'https://api.example.com', PUBLIC_KEY: 'pk_live_123', }, },};
export default config;Auf nativen Plattformen werden die Werte in den generierten Konfigurationsdateien gespeichert (ios/App/App/capacitor.config.json und android/app/src/main/assets/capacitor.config.json). Aktualisieren Sie diese Dateien pro Variante, wenn Sie mandantenspezifische Werte benötigen.
Werte im Code lesen
Section titled “Werte im Code lesen”import { Env } from '@capgo/capacitor-env';
const apiUrl = await Env.getKey({ key: 'API_URL' }).then((result) => result.value);
if (!apiUrl) { throw new Error('Fehlende API_URL-Konfiguration');}Fallbacks bereitstellen
Section titled “Fallbacks bereitstellen”const loadConfig = async () => { const { value: endpoint } = await Env.getKey({ key: 'API_URL' }); return endpoint || 'https://staging.example.com';};- Verwenden Sie unterschiedliche
capacitor.config-Dateien pro Umgebung und verweisen Sie die CLI mitnpx cap run ios --configuration=prodauf die richtige. - Kombinieren Sie mit Capgo Updater-Kanälen, um mandantenspezifische Werte zu liefern, ohne neue Binärdateien zu veröffentlichen.
- Halten Sie Geheimnisse aus der Versionskontrolle heraus, indem Sie sie während Ihres CI-Builds vor
npx cap syncersetzen.