Skip to content

Lancer l'app ​

Prérequis ​

OutilPourquoi
Node.js 22 ou plusPour installer les dépendances et lancer le serveur Expo
L'application Expo Go sur ton téléphonePour lancer l'app sans rien compiler (iOS, Android)
Le téléphone et l'ordinateur sur le même Wi-FiPour que le téléphone trouve le serveur de développement

Pas besoin de Xcode, d'Android Studio, ni de lancer l'API en local : l'app utilise directement l'API de production.

Démarrer ​

bash
cd timemanager-mobile
npm install
npx expo start

Un QR code s'affiche dans le terminal :

  • iPhone : ouvre l'appareil photo et vise le QR code ;
  • Android : ouvre Expo Go et scanne le QR code.

L'app se charge. Chaque fois que tu sauvegardes un fichier, elle se met à jour toute seule.

Pas le même réseau ?

Lance npx expo start --tunnel. Expo crée un tunnel internet, plus lent mais qui marche partout.

Choisir l'API ​

Par défaut, l'app appelle https://api.time.jostud.com/api. Pour en utiliser une autre (une API locale par exemple), crée un fichier .env.local à partir du modèle :

bash
cp .env.example .env.local
ini
EXPO_PUBLIC_API_URL=http://192.168.1.20:4000/api

Les variables qui commencent par EXPO_PUBLIC_ sont lisibles dans le code. .env.local n'est pas versionné. Après un changement, relance npx expo start.

Les commandes utiles ​

CommandeEffet
npx expo startLance le serveur de développement
npx expo start -cPareil, en vidant le cache (si quelque chose semble bloqué)
npx tsc --noEmitVérifie les types de tout le projet
npx expo lintVérifie le style du code
npx expo-doctorDiagnostique la configuration et les versions
npx expo install <paquet>Installe un paquet dans la version compatible avec le SDK
npx expo install --fixCorrige les versions incompatibles

Toujours npx expo install

Pour ajouter une dépendance, n'utilise pas npm install <paquet>. npx expo install choisit la version qui correspond au SDK 57. Une mauvaise version fait planter l'app dans Expo Go.

Dans l'app ​

Au premier lancement, la présentation s'affiche (trois écrans). Ensuite, connecte-toi avec un compte existant de la production. Le compte détermine les onglets affichés : employé, manager ou general manager.

Problèmes fréquents ​

SymptômeSolution
Le téléphone ne trouve pas le serveurMême Wi-Fi ? Sinon npx expo start --tunnel
Erreur de type sur router.push('/nouvel-ecran')Les types des routes sont générés au démarrage. Relance npx expo start une fois.
« Asset not found »Un chemin d'image dans app.json est faux. Les images sont dans assets/images/.
L'app reste sur l'écran de lancementLa session ou les polices ne se chargent pas. Regarde les erreurs dans le terminal.
Écran rouge après l'ajout d'un paquetLe paquet contient du code natif absent d'Expo Go. Il faut un « development build » (npx expo run:ios ou eas build).