À propos du projet
Expo Device Hub est un plugin Expo DevTools qui offre une surface de contrôle unique pour les simulateurs iOS et les émulateurs Android, permettant aux développeurs de prévisualiser et d'interagir avec les appareils depuis le navigateur sans quitter leur flux de travail. Lors de l'exécution de `expo start`, il enregistre un tableau de bord des appareils qui affiche un flux en direct de n'importe quel appareil et permet une interaction directe.
Capacités clés :
- Diffusion en direct des simulateurs iOS et des émulateurs Android dans le navigateur.
- Interaction directe : tap, swipe, défilement et saisie au clavier dans l'appareil.
- Démarrer, éteindre et ajouter des appareils sans ouvrir Xcode ni Android Studio.
- Suit le thème clair/sombre du système et peut basculer l'apparence de l'appareil.
- Alimenter la caméra d'un émulateur Android avec un PNG depuis la section Camera de l'inspecteur.
Prérequis : les simulateurs iOS nécessitent macOS avec Xcode ; les émulateurs Android nécessitent le SDK Android (emulator, adb). L'utilisation du Hub dans une application Expo nécessite Expo SDK 57 ou une version plus récente.
Utilisation : installer avec `npx expo install expo-device-hub`, puis exécuter `npx expo start`. Un lien apparaît dans le terminal. Il peut aussi fonctionner de manière autonome via `npx expo-device-hub`.
Le dépôt est un workspace Bun orchestré avec Turborepo. Les paquets incluent le plugin DevTools principal, une couche client d'appareils (@expo/hub-client) qui unifie les protocoles de communication différents de serve-sim (MJPEG/H.264, paquets tactiles binaires) et serve-emu (H.264 via WebCodecs, gestes JSON), un kit UI sans dépendances construit sur les tokens du styleguide Expo, des utilitaires pour appareils Apple et Android, et les serveurs serve-sim/serve-emu vendus. Une application Expo d'exemple démontre le plugin tel qu'un utilisateur final le verrait.
Développement : installer les dépendances avec Bun 1.3.14 et compiler tous les paquets avec `bun run build`. L'application d'exemple peut être lancée avec `bun start`. Pour l'itération UI, le plugin peut fonctionner comme une application web Expo autonome avec le fast refresh de Metro ; le serveur d'appareils est intégré, donc les modifications sous src/server nécessitent `bun run build:server`.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.