Aller au contenu

Installation

  • Expo SDK 50+ (ou React Native 0.73+ vanilla)
  • Hermes activé (recommandé pour la capture des unhandled rejections)
  • Node 18+
Fenêtre de terminal
npm install @pionne/react-native

Ces packages activent des fonctionnalités complémentaires. Tu peux installer uniquement ceux dont tu as besoin.

PackageActivé pourObligatoire ?
expo-applicationRécupère app version, bundle idRecommandé
expo-deviceModèle, OS, marque dans le contexteRecommandé
expo-updatesTag automatique du runtime/update idOptionnel
react-native-view-shotCapture d’écranSi screenshots
@react-native-async-storage/async-storageQueue offlineSi réseau instable

Installe tout d’un coup :

Fenêtre de terminal
npx expo install expo-application expo-device expo-updates react-native-view-shot @react-native-async-storage/async-storage

Si tu veux exposer ton release/environment via les EAS Updates :

{
"expo": {
"version": "1.0.0",
"runtimeVersion": "1.0.0",
"extra": {
"pionneEnv": "production"
}
}
}
  1. Importer le SDK :

    import { Pionne } from '@pionne/react-native';
  2. Appeler init au plus tôt (avant le rendu) :

    Pionne.init({
    token: 'pio_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
    environment: __DEV__ ? 'development' : 'production',
    release: '1.0.0',
    tags: { feature_flag_v2: true },
    sampleRate: 1,
    scrubPii: true,
    });
  3. (Expo Router) — placer l’init dans app/_layout.tsx au-dessus du <Stack> :

    import { Stack } from 'expo-router';
    import { Pionne } from '@pionne/react-native';
    Pionne.init({ token: process.env.EXPO_PUBLIC_PIONNE_TOKEN! });
    export default function RootLayout() {
    return <Stack />;
    }

Place ton token dans .env et utilise EXPO_PUBLIC_PIONNE_TOKEN. Le token est destiné à l’écriture seule (cf. Tokens) — il est safe d’être bundlé.

.env
EXPO_PUBLIC_PIONNE_TOKEN=pio_live_xxxxxxxxxxxx...