expo-dev-client

Par expo · skills

Créez et distribuez des clients de développement Expo localement ou via TestFlight

npx skills add https://github.com/expo/skills --skill expo-dev-client

Utilisez EAS Build pour créer des clients de développement destinés à tester les modifications de code natif sur des appareils physiques. Utilisez cette fonctionnalité pour créer des clients Expo Go personnalisés permettant de tester les branches de votre application.

Important : Quand les Development Clients sont nécessaires

Créez un development client uniquement si votre application nécessite du code natif personnalisé. La plupart des applications fonctionnent correctement dans Expo Go.

Vous avez besoin d'un dev client UNIQUEMENT si vous utilisez :

  • Des modules Expo locaux (code natif personnalisé)
  • Des cibles Apple (widgets, app clips, extensions)
  • Des modules natifs tiers non disponibles dans Expo Go

Essayez d'abord Expo Go avec npx expo start. Si tout fonctionne, vous n'avez pas besoin de dev client.

Configuration EAS

Assurez-vous que eas.json dispose d'un profil development :

{
  "cli": {
    "version": ">= 16.0.1",
    "appVersionSource": "remote"
  },
  "build": {
    "production": {
      "autoIncrement": true
    },
    "development": {
      "autoIncrement": true,
      "developmentClient": true
    }
  },
  "submit": {
    "production": {},
    "development": {}
  }
}

Paramètres clés :

  • developmentClient: true - Intègre expo-dev-client pour les builds de développement
  • autoIncrement: true - Incrémente automatiquement les numéros de build
  • appVersionSource: "remote" - Utilise EAS comme source de vérité pour les numéros de version

Build pour TestFlight

Créez un client dev iOS et soumettez-le à TestFlight en une seule commande :

eas build -p ios --profile development --submit

Cela va :

  1. Créer le client de développement dans le cloud
  2. Soumettre automatiquement à App Store Connect
  3. Vous envoyer un email quand le build est prêt dans TestFlight

Après avoir reçu l'email TestFlight :

  1. Téléchargez le build depuis TestFlight sur votre appareil
  2. Lancez l'application pour voir l'interface expo-dev-client
  3. Connectez-vous à votre bundler Metro local ou scannez un code QR

Build en local

Créez un client de développement sur votre machine :

# iOS (nécessite Xcode)
eas build -p ios --profile development --local

# Android
eas build -p android --profile development --local

Sortie des builds locaux :

  • iOS : fichier .ipa
  • Android : fichier .apk ou .aab

Installation des builds locaux

Installez le build iOS sur le simulateur :

# Trouvez le .app dans la sortie .tar.gz
tar -xzf build-*.tar.gz
xcrun simctl install booted ./path/to/App.app

Installez le build iOS sur un appareil (nécessite une signature) :

# Utilisez la fenêtre Xcode Devices ou ideviceinstaller
ideviceinstaller -i build.ipa

Installez le build Android :

adb install build.apk

Build pour une plateforme spécifique

# iOS uniquement
eas build -p ios --profile development

# Android uniquement
eas build -p android --profile development

# Les deux plateformes
eas build --profile development

Vérification du statut du build

# Lister les builds récents
eas build:list

# Afficher les détails du build
eas build:view

Utilisation du Dev Client

Une fois installé, le dev client offre :

  • Connexion au serveur de développement - Entrez l'URL de votre bundler Metro ou scannez un code QR
  • Informations de build - Consultez les détails du build natif
  • Interface Launcher - Basculez entre les serveurs de développement

Connectez-vous au développement local :

# Démarrez le bundler Metro
npx expo start --dev-client

# Scannez le code QR avec le dev client ou entrez l'URL manuellement

Dépannage

Le build échoue avec des erreurs de signature :

eas credentials

Effacer le cache du build :

eas build -p ios --profile development --clear-cache

Vérifier la version de l'EAS CLI :

eas --version
eas update

Skills similaires