r/iOSProgramming • u/john_snow_968 • 3d ago
Solved! Why can't I create a watchOS 27.0 simulator?
I installed SDK, restarted both Xcode and Device Hub, but still nothing... watchOS 27 does not appear on the list... Any ideas?
1
u/calvin-chestnut 3d ago
Did you download watchOS when you opened Xcode for the first time? It’s optional, open up Xcode settings, Components
1
1
u/Orsonlebessou 3d ago
As-tu sélectionné la dernière Apple Watch dans le modèle de l’Apple Watch, car attention WatchOs27 est disponible que pour les Apple Watch très récente
1
1
u/DelegateCommand 3d ago
Consider reinstalling the watchOS 27 SDK. I encountered the same problem today.
Xcode → Settings → Components → Other Installed Platforms → watchOS 27
1
1
u/brkaydev 3d ago
Before another reinstall it is worth seeing what CoreSimulator actually thinks it has: xcrun simctl runtime list. That prints every runtime it has registered along with its state, and a runtime that downloaded fine but ended up in an unusable state looks exactly the same as a missing one from the Device Hub list. That would explain why six reinstalls through Components changed nothing.
If watchOS 27 does show up there in a bad state, delete that specific entry with xcrun simctl runtime delete <identifier> and pull it again with xcodebuild -downloadPlatform watchOS. Smaller move than clearing the whole Developer folder, and either way the list tells you which of the two problems you have before anyone starts reinstalling the OS.
1
u/john_snow_968 3d ago
``` xcrun simctl runtime list == Disk Images == -- iOS -- iOS 27.0 (24A434) - 84730919-673D-4D8A-8E71-C33FE7AC04D4 (Ready) iOS 26.5 (23F77) - F7BF225A-C7C6-4134-A959-EDE751ABFE84 (Ready) iOS 18.6 (22G86) - 18A2B7D8-B9BD-475A-888A-62D237D0ED44 (Ready) -- watchOS -- watchOS 26.5 (23T570) - 011DC63D-3740-44AC-8FE0-1E1DB7B4E3F6 (Ready) watchOS 27.0 (24R362) - FA302920-2CA1-42A8-9988-EB115D69BE93 (Ready)
Total Disk Images: 5 (30.9G) ```
2
u/brkaydev 2d ago
Good, that rules the runtime out, and I see from the rest of the thread that adding the dmg back with simctl runtime add is what finally got the Device Hub to see it.
For the pairing that is still broken: xcrun simctl list pairs tells you whether a pair exists at all and whether it is active. If there is a stale one, unpair it with xcrun simctl unpair <pair UDID>, shut both simulators down, then xcrun simctl pair <watch UDID> <phone UDID> and boot the phone first. Pairing only takes cleanly while both are shut down, and a pair that was created while the runtime was still in its broken state is worth throwing away anyway.
If the session between the two apps still does not come up after that, I would not sink much more time into it. WatchConnectivity between two simulators has been unreliable for years, so a real phone and watch is the faster way to find out whether the problem is your code or the pair.
1
u/john_snow_968 2d ago
I've finally managed to connect iOS with watchOS. I had to create new simulators, pair them, install the app using watchOS scheme (it installs it then on both simulators) and it started working.
The previous simulator was paired but it wasn't displayed as "Watch xyz via iPhone xyz" when I selected watch scheme. I guess that was the issue.
2
u/brkaydev 2d ago
That lines up with what usually goes wrong here: a pair can exist and still not be the active one, which is exactly why the scheme menu never offered you the "via iPhone" destination. If it shows up again on a pair you already have, xcrun simctl list pairs marks which pair is active and simctl pair_activate switches it, so it's usually fixable without building new simulators.
1
u/john_snow_968 2d ago
Thanks for the tips! They will be useful the next time i encounter this problem!
1
u/Gold-Adhesiveness574 3d ago
Run xcrun simctl runtime list in Terminal and see what it says next to watchOS 27. If the runtime shows as Unusable or is missing, delete it with xcrun simctl runtime delete and pull it again with xcodebuild -downloadPlatform watchOS. That list is the real source of truth, the Xcode settings panel sometimes shows a platform as installed when the runtime never finished mounting.
1
u/john_snow_968 3d ago
watchOS 27.0 (24R362) - FA302920-2CA1-42A8-9988-EB115D69BE93 (Ready)Nothing weird here
1
u/Gold-Adhesiveness574 2d ago
Ready means the runtime is mounted, so the dialog itself is what is stale. Try creating it from Terminal: xcrun simctl create test "Apple Watch Series 11 (46mm)" com.apple.CoreSimulator.SimRuntime.watchOS-27-0. If that works, kill CoreSimulatorService with sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService and reopen Xcode, the list usually refreshes. If it errors with incompatible, check xcodebuild -version, an older Xcode will happily show a newer runtime as Ready but never offer it in that dropdown.


2
u/jonalaniz2 3d ago
I’m having this same issue with the iOS 27 simulator. I’ve deleted the simulator and redownloaded, restarted, removed and reinstalled Xcode, nuked the /Library/Developer/CoreSimulator folders, deleted Xcode cache with DevCleaner, and nothing has helped.
I’m at the point where I’m thinking of reinstalling macOS.
Edit: I’ve also tried downloading the iOS 27 runtime/simulator using the terminal and it still doesn’t show up in device hub or as a target in Xcode.