web-dev-qa-db-fra.com

le simulateur ios apparaît avec UDID dans xcode 6

Lorsque je sélectionne le simulateur à partir de xcode 6, je reçois plusieurs options pour sélectionner le simulateur, mais le simulateur est livré avec UDID. S'il vous plaît voir l'image ci-dessous et s'il vous plaît aidez-moi. Merci d'avance.

enter image description here

28
Dharmbir Singh
killall Xcode
- Tue tous les processus Xcode en cours d'exécution.
Sudo killall -9 com.Apple.CoreSimulator.CoreSimulatorService
- Tue tous les processus en cours d'exécution de CoreSimulatorService.
rm -rf ~/Library/Developer/CoreSimulator/Devices
- Supprime toutes les données du simulateur, de tous les simulateurs.
open /Applications/Xcode.app - Ouvre Xcode.

Les étapes ci-dessus de xcode 10 ne sont pas valides, procédez comme suit:

xcrun simctl shutdown all
éteindre tous les appareils

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"
liste tous les périphériques disponibles

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"|xargs xcrun simctl delete supprimer tous les périphériques (remarque: il s’agit d’une seule ligne)

plus de détails xcrun simctl help

38
SinoJerk

Dans Xcode, allez à Window -> Devices (le raccourci est Cmd +!)

Dans le volet de gauche, supprimez tous les dispositifs de simulateur superflus (sélectionnez-le dans le volet de gauche et appuyez sur la touche Suppr du clavier).

Ce sont généralement ceux qui n’ont pas de système d’exploitation (affichant iOS: n/a).

Cela se produit généralement lorsque vous essayez de copier les anciennes versions du simulateur directement dans les dossiers du SDK plutôt que de les installer à partir de Xcode -> Préférences.

21
Ameer Sheikh

Comment résoudre ce problème

Xcode utilise la version du périphérique pour distinguer les périphériques du même nom. Si deux périphériques portent le même nom et le même numéro de version, ils utiliseront les UDID des périphériques.

Vous avez 4 appareils sur chaque groupe d'appareils (par exemple, l'iPhone 5). Je soupçonne que certains d'entre eux sont pour la même version iOS. Vous devez supprimer certains des doublons. Extrayez xcrun simctl list et xcrun simctl delete ou utilisez le gestionnaire de périphériques dans Xcode.app (cliquez sur le "-" pour supprimer un périphérique).

Comment revenir à un état par défaut

# Ensure all possible clients of CoreSimulatorService are no longer running:

killall Xcode 2> /dev/null
killall Instruments 2> /dev/null
killall 'iOS Simulator' 2> /dev/null
killall Simulator 2> /dev/null
killall 'Simulator (Watch)' 2> /dev/null
killall ibtoold 2> /dev/null
killall simctl 2> /dev/null
# There may be others

# Kill the service itself
Sudo killall -9 com.Apple.CoreSimulator.CoreSimulatorService

# Remove all the data and logs
rm -rf ~/Library/*/CoreSimulator

Pourquoi cela pourrait se produire:

CoreSimulatorService surveillera l’ajout de nouveaux programmes d’exécution du simulateur dans/Library/Developer/CoreSimulator/Profiles (par exemple, lors du téléchargement depuis Xcode -> Préférences -> Téléchargements). Lors de l'installation d'un nouveau moteur d'exécution, CoreSimulatorService crée un ensemble initial de périphériques pour ce moteur d'exécution.

Ce problème se pose si plusieurs instances de CoreSimulatorService sont exécutées simultanément. Chaque instance CoreSimulatorService créera son propre ensemble de périphériques (mais ses clients ne verront d'abord que les ensembles de ces instances). Lors des lancements suivants (par exemple: après un redémarrage), les deux copies seront visibles. On peut entrer dans un état où plusieurs copies de CoreSimulatorService s'exécutent en même temps en testant les versions bêta de Xcode.app dans la même session de connexion que celle utilisant Xcode.app publié ou en ayant utilisé Xcode.app avant et après sa mise à jour. via l'App Store.

Si vous êtes au courant d'un autre problème susceptible de provoquer ce bogue, veuillez enregistrer un nouveau radar à l'adresse http://bugreport.Apple.com .

Aller à la fenêtre -> Périphériques (le raccourci est Cmd + Maj + 2) Dans le volet de gauche, supprimez tous les dispositifs de simulateur superflus (sélectionnez dans le volet de gauche et appuyez sur la touche Suppr du clavier) sont ceux qui n’ont pas de système d’exploitation (affichant iOS: n/a). Cela se produit généralement lorsque vous essayez de copier les anciennes versions du simulateur directement dans les dossiers du SDK plutôt que de les installer à partir de Xcode -> Préférences.

0
Pawel Molodkin

Comme @ ameer-sheikh l'a mentionné, sélectionnez Fenêtre> Périphériques Il est probable que plusieurs périphériques possèdent la même version iOS. J'ai eu le même problème et après avoir sélectionné chaque périphérique dupliqué et appuyé sur Supprimer, j'ai pu rétablir l'ordre dans la liste déroulante Périphériques.

0
dmorrow