Commencer
-
Installez le package
Fenêtre de terminal npm i @capgo/capacitor-envFenêtre de terminal pnpm add @capgo/capacitor-envFenêtre de terminal yarn add @capgo/capacitor-envFenêtre de terminal bun add @capgo/capacitor-env -
Synchroniser les plateformes natives
Fenêtre de terminal npx cap syncFenêtre de terminal pnpm cap syncFenêtre de terminal yarn cap syncFenêtre de terminal bunx cap sync
Déclarer les valeurs de configuration
Section titled “Déclarer les valeurs de configuration”Ajoutez des clés à la configuration Capacitor afin qu’elles soient intégrées dans vos versions natives. Vous pouvez créer plusieurs variantes de configuration (capacitor.config.prod.ts, capacitor.config.dev.ts, etc.) pour échanger les valeurs par environnement.
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;Sur les plateformes natives, les valeurs sont stockées dans les fichiers de configuration générés (ios/App/App/capacitor.config.json et android/app/src/main/assets/capacitor.config.json). Mettez à jour ces fichiers par version si vous avez besoin de valeurs spécifiques au locataire.
Lire les valeurs dans le code
Section titled “Lire les valeurs dans le code”import { Env } from '@capgo/capacitor-env';
const apiUrl = await Env.getKey({ key: 'API_URL' }).then((result) => result.value);
if (!apiUrl) { throw new Error('Missing API_URL configuration');}Fournir des solutions de secours
Section titled “Fournir des solutions de secours”const loadConfig = async () => { const { value: endpoint } = await Env.getKey({ key: 'API_URL' }); return endpoint || 'https://staging.example.com';};Conseils
Section titled “Conseils”- Utilisez différents fichiers
capacitor.configpar environnement et pointez le CLI vers celui de droite avecnpx cap run ios --configuration=prod. - Combinez avec les canaux de mise à jour Capgo pour expédier des valeurs spécifiques au locataire sans publier de nouveaux binaires.
- Gardez les secrets hors du contrôle de code source en les remplaçant lors de la construction de votre CI avant le
npx cap sync.