ios simulator appear with UDID in xcode 6
Asked Answered
S

6

29

When i select simulator from xcode 6 then i'm getting multiple option to select simulator but simulator comes with UDID. Please see the below image and please help me out. Thanks in advance.

enter image description here

Sausa answered 6/10, 2014 at 7:26 Comment(1)
possible duplicate of XCode using GUID instead of iOS version number in Simulator SelectionKatey
K
40
killall Xcode
- Kills all running Xcode processes.
sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService
- Kills all running CoreSimulatorService's processes.
rm -rf ~/Library/Developer/CoreSimulator/Devices
- Removes all Simulator data, from all the Simulators.
open /Applications/Xcode.app - Opens Xcode.

The above steps from xcode 10 are invalid, please use the following steps:

xcrun simctl shutdown all
shutdown all devices

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"
list all available devices

xcrun simctl list devices|grep -v "unavailable"|grep -Eo "[0-9A-F\-]{36}"|xargs xcrun simctl delete delete all devices(note: this is a single line)

more detail xcrun simctl help

Katanga answered 15/7, 2015 at 3:47 Comment(4)
killing processes in my case was required in order to fix the issue. being done solely from terminal is pretty neat, thoughMewl
This answer should be updated with an explanation of the causes of the issue, and an explanation of what the terminal commands do.Ironhanded
That worked, but now I have no simulators. How do I get a base set of simulators back again? The Downloads window doesn't list the iOS 9.2 simulator, and shows the others as already downloaded.Epilepsy
I found it: Window > Devices > + > Add Simulator.Epilepsy
A
21

In Xcode, go to Window -> Devices (shortcut is Cmd+!)

In the left pane, delete all the superfluous simulator devices (select in the left pane and press delete on keyboard)

Usually these are the ones that have no OS (showing iOS: n/a).

This usually happens when you try and copy older simulator versions directly in the SDK folders rather than installing them from Xcode -> Preferences.

Add answered 14/10, 2014 at 14:17 Comment(2)
Ok, Thanks but it i want to copy old simulator then how to do it??Sausa
you shouldn't copy it directly. Go to Preferences -> Downloads and under Components, download the simulator that you need.Add
K
16

How to fix it

Xcode uses the device version to disambiguate devices with the same name. If two devices have the same name and version number, it will use the devices' UDIDs.

You have 4 of each of a bunch of devices (eg iPhone 5s). I suspect that some of them are for the same iOS version. You should delete some of the duplicates. Check out xcrun simctl list and xcrun simctl delete or use the device manager within Xcode.app (click on the "-" to delete a device).

How to just get back to a default state

# 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

Why this might be happening:

CoreSimulatorService will monitor for the addition of new simulator runtimes in /Library/Developer/CoreSimulator/Profiles (eg, for when downloading them from Xcode -> Preferences -> Downloads). When installing a new runtime, CoreSimulatorService will create an initial set of devices for that runtime.

This problem arrises if there are multiple instances of CoreSimulatorService running at the same time. Each CoreSimulatorService instance will create its own set of devices (but its clients will only see that instances's sets at first). On subsequent launches (eg: after a reboot), both copies will be seen. One can get into a state where multiple copies of CoreSimulatorService are running at the same time due to testing beta versions of Xcode.app in the same login session as using the released Xcode.app or by having used Xcode.app before and after updating it through the App Store.

If you are aware of any other way that this bug might come about, please file a new radar at http://bugreport.apple.com

Katey answered 6/10, 2014 at 13:52 Comment(4)
I've deleted all files in ~/Devices/ folder. But still getting this one.Sausa
You would need to SIGKILL the service ss well (or just reboot).Katey
Other solutions didn't work but this one did. The * was key for me because ~/Library/Logs/CoreSimulator needs to be deleted as well.Delineation
This works for me. Others didn't fully resolve my issue.Vedette
C
0

As @ameer-sheikh mentioned, go to Window > Devices You likely have multiple devices with the same iOS version. I had the same issue, and after selecting each duplicate device and pressing delete I was able to restore order to my Devices dropdown

Coexist answered 22/7, 2015 at 18:37 Comment(0)
S
0

Go to Window -> Devices (Shortcut is Cmd+Shift+2) In the left pane, delete all the superfluous simulator devices (select in the left pane and press delete on keyboard) Usually these are the ones that have no OS (showing iOS: n/a). This usually happens when you try and copy older simulator versions directly in the SDK folders rather than installing them from Xcode -> Preferences.

Sulfapyridine answered 5/8, 2015 at 14:6 Comment(0)
Z
-1

The bash commands in another answer are probably simpler but you can try this for an easier yet more complex solution:

gem install snapshot; snapshot reset_simulators

https://github.com/KrauseFx/snapshot

via @saniul

Zimmermann answered 4/8, 2015 at 18:32 Comment(1)
Though when I do this it removes all my sims from my beta Xcode 7 install and my Xcode 7 sim crashes on launch because it assumes at least one sim is installed. I had to create an Xcode 7 sim in the devices window.Zimmermann

© 2022 - 2024 — McMap. All rights reserved.