Comment déterminer par programmation si une application est exécutée dans le simulateur iPhone ?
Bonjour à tous ! Je suis un développeur iOS débutant et j'ai rencontré un problème : j'ai besoin qu'un code s'exécute dans le simulateur et un autre sur un appareil réel. Par exemple, je veux utiliser la caméra uniquement sur un vrai iPhone, et dans le simulateur afficher simplement un placeholder. Mais comment le vérifier par programmation ?
J'ai essayé de chercher sur Internet, mais je suis tombé sur différents macros et flags de compilation. En Objective-C, cela ressemble à ceci :
```objectivec
#if TARGET_IPHONE_SIMULATOR
// code pour le simulateur
#else
// code pour l'appareil réel
#endif
```
Mais j'écris en Swift, et je n'arrive pas à transposer directement cette construction. J'ai essayé d'utiliser `#if targetEnvironment(simulator)`, mais Xcode se plaint que c'est une directive invalide. Peut-être faut-il importer ou inclure quelque chose ? Ou existe-t-il une autre méthode ?
J'ai aussi entendu dire qu'on peut vérifier l'architecture du processeur (x86_64 pour le simulateur et arm64 pour l'appareil réel), mais cela semble peu fiable — et si Apple sort un simulateur sur ARM ?