42 votes

Y a-t-il un moyen de simuler plusieurs iphones en utilisant xcode/iphone sim ?

Je prépare un jeu qui nécessite plusieurs utilisateurs et je me demandais s'il était possible de lancer plusieurs instances de l'iPhone Simulator. Je n'ai rien vu dans les menus ou dans les résultats de recherche Google, mais je voulais juste m'assurer que je ne manquais rien.

61voto

lvsti Points 461

C'est possible, mais seulement avec plusieurs utilisateurs.

Lisez ceci : http://www.coderebel.com/2010/08/31/iphone_simulator

En supposant que vous avez deux projets (P1,P2) que vous voulez déboguer simultanément, faites comme suit.

Étapes de la mise en place :

  1. Créer un nouvel utilisateur (U2) sur votre Mac
  2. Donnez-lui un accès R/W à P2, en particulier à son dossier de construction.
  3. Téléchargez l'application du lanceur depuis le site ci-dessus et copiez-la dans Applications.

Étapes du débogage :

  1. Fermez Xcode et le simulateur s'il fonctionne
  2. Lancez l'application iPhone Launcher.app avec U1.
  3. Démarrez Xcode avec U1, chargez P1, commencez à déboguer.
  4. Lancez l'application iPhone Launcher.app avec U2.
  5. Démarrez Xcode avec U2, chargez P2, commencez à déboguer.

Malheureusement c'est un P.I.T.A. de devoir changer d'utilisateur de temps en temps mais jusqu'à présent je n'ai pas trouvé de meilleure solution. J'espère que cela vous aidera.

11voto

Ramin Points 10412

D'après ce que je sais, non seulement vous ne pouvez pas avoir plusieurs instances du simulateur en cours d'exécution, mais lorsque vient le moment de tester le dispositif réel, vous ne pouvez pas non plus avoir plusieurs instances du débogueur en cours d'exécution.

Cela signifie que pour réaliser des applications multi-appareils, vous devrez avoir un seul Mac affecté à un seul appareil iPhone/touch (ou instance de simulateur), chacun exécutant votre application.

J'ai commencé à chercher si VMWare ou Parallels pouvaient être utilisés, mais il n'y a pas grand-chose à faire sans modifier le système d'exploitation.

Je suggère de déposer une demande de fonctionnalité auprès de http://bugreporter.apple.com .

1voto

Mike Points 5839

Une autre option (bien que probablement excessive) si vous avez une licence Mac OS X Server est de virtualiser une instance de Mac OS X Server et d'exécuter un second simulateur dans la VM.

0voto

RexOnRoids Points 5020

Hmm... Je ne pense pas que vous manquez quelque chose ici. Pour autant que je sache, il n'y a pas de technologie dans le SDK qui permette d'émuler plusieurs appareils - bien que ce serait une fonction utile à avoir. Je pense que vos seules options seraient d'obtenir un deuxième appareil iPhone OS, ou de demander à un ami qui a également un appareil iPhone OS de vous laisser l'utiliser pour les tests.

0voto

Ravikant Nagar Points 21

Suivez ces étapes pour tester votre application.

Vous devez d'abord faire une chose pour l'ensemble du processus : Allez dans Projet - > Editer les paramètres du projet -> cochez l'option - Construire des cibles indépendantes en parallèle.

  1. Code de débogage qui créera votre application dans le simulateur Par exemple, le nom de votre application est - Instance
  2. Simulateur de fermeture
  3. Allez dans Projet->Nouvelle cible -> Instance2 Ajoutez "Bundle display name : Instance2" dans le fichier Instance2.info.plist Définir le nom de l'exécutable : Instance2 Sélectionner la cible Instance2 -> Aller au projet -> Définir la cible active -> Instance2 Construire avec Instance2

Note : Faites tout soigneusement sinon vous devrez réinitialiser votre simulateur. Pour réinitialiser le simulateur -> Exécuter le simulateur -> Simulateur iPhone -> Réinitialiser le contenu et les paramètres...

Maintenant vous avez deux applications dans le simulateur et vous pouvez tester l'application sur toutes les instances.

J'espère que cela vous aidera :)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X