Some Macs recently received a macOS system update which disabled the simulator runtimes used by Xcode 15, including the simulators for iOS, tvOS, watchOS, and visionOS. If your Mac received this update, you will receive the following error message and will be unable to use the simulator:
The com.apple.CoreSimulator.SimRuntime.iOS-17-2 simulator runtime is not available.
Domain: com.apple.CoreSimulator.SimError
Code: 401
Failure Reason: runtime profile not found using "System" match policy
Recovery Suggestion: Download the com.apple.CoreSimulator.SimRuntime.iOS-17-2 simulator runtime from the Xcode
To resume using the simulator, please reboot your Mac. After rebooting, check Xcode Preferences → Platforms to ensure that the simulator runtime you would like to use is still installed. If it is missing, use the Get button to download it again.
The Xcode 15.3 Release Notes are also updated with this information.
Xcode
RSS for tagBuild, test, and submit your app using Xcode, Apple's integrated development environment.
Posts under Xcode tag
200 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
On several different XIBs I get a compiler error like
Internal error. Please file a bug at feedbackassistant.apple.com and attach "/var/folders/1v/ 516am8h11fzbmdy9sh r1znh0000an/T/|B-adent-diagnostics 2025-06-30 15-02-36 468000" W
These XIBs were unmodified, the only different was the Xcode version they were compiled against. Any suggestions for a fix, workaround, or troubleshooting? I tried restarting Xcode, restarting macOS, cleaning the build, and deleting derived data.
I am using Foundation Models for the first time and no response is being provided to me.
Code
import Playgrounds
import FoundationModels
#Playground {
let session = LanguageModelSession()
let result = try await session.respond(to: "List all the states in the USA")
print(result.content)
}
Canvas Output
What I did
New file
Code
Canvas refreshes but nothing happens
Am I missing a step or setup here? Please help. Something so basic is not working I do not know what to do.
Running 40GPU, 16CPU MacBook Pro.. IOS26/Xcodebeta2/Tahoe allocated 8CPU, 48GB memory in Parallels VM.
Settings for Playgrounds in Xcode
Thank you for your help in advance.
Hi everyone,
I’m working on a Capacitor app built with Angular, and I’m trying to call a Swift class directly from the root of the iOS project (next to AppDelegate.swift) without using a full Capacitor plugin structure.
The Swift file is called RtspVlcPlugin.swift and looks like this:
import Capacitor
@objc(RtspVlcPlugin)
public class RtspVlcPlugin: CAPPlugin {
@objc func iniciar(_ call: CAPPluginCall) {
call.resolve()
}
}
In AppDelegate.swift I register it like this:
if let bridge = self.window?.rootViewController as? CAPBridgeViewController {
bridge.bridge?.registerPluginInstance(RtspVlcPlugin())
print("✅ RtspVlcPlugin registered.")
}
The registration message prints correctly in Xcode logs.
But from Angular, when I try to call it like this:
import { registerPlugin } from '@capacitor/core';
const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin');
RtspVlcPlugin.iniciar({ ... });
I get this error:
{"code":"UNIMPLEMENTED"}
So, even though the plugin is registered manually, it’s not exposing any methods to the Angular/Capacitor runtime.
My question is:
What is the correct way to access a manually created Swift class (in the root of the iOS project) from Angular via Capacitor?
Thanks in advance!
Hi everyone,
I'm developing a Capacitor plugin to display an RTSP video stream using MobileVLCKit on iOS. The Android side works perfectly, but I can’t get the iOS plugin to work — it seems my Swift file is not being detected or recognized, even though I’ve followed the official steps.
What works:
I followed the Capacitor Plugin Development Guide.
I implemented the Android version of the plugin in Java inside the android/ folder. Everything works perfectly from Angular: the plugin is recognized and calls execute correctly.
The issue on iOS:
I implemented the iOS part in Swift, using the official MobileVLCKit documentation.
I initially placed my RtspVlcPlugin.swift file in the plugin’s iOS folder, as the docs suggest.
Then I moved it directly into the main app’s ios/App/App/ folder next to AppDelegate.swift and tried manual registration.
The problem:
Even though I manually register the plugin with:
if let bridge = self.window?.rootViewController as? CAPBridgeViewController {
bridge.bridge?.registerPluginInstance(RtspVlcPlugin())
print("✅ Plugin RtspVlcPlugin registered manually.")
}
It prints the registration message just fine.
BUT from Angular, the plugin is not recognized: Capacitor.Plugins.RtspVlcPlugin has no methods, and I get this error:
"code":"UNIMPLEMENTED"
I also tried declaring @objc(RtspVlcPlugin) and extending CAPPlugin.
I’ve verified RtspVlcPlugin.swift is added to the target and compiled.
The Swift file doesn’t seem to register or expose any methods to Angular.
I even tried adding the code without using a plugin at all — just creating a Swift class and using it via the AppDelegate, but it still doesn't expose any callable methods.
My Swift code (RtspVlcPlugin.swift):
import Capacitor
import MobileVLCKit
@objc(RtspVlcPlugin)
public class RtspVlcPlugin: CAPPlugin, VLCMediaPlayerDelegate {
var mediaPlayer: VLCMediaPlayer?
var containerView: UIView?
var spinner: UIActivityIndicatorView?
@objc func iniciar(_ call: CAPPluginCall) {
guard
let urlStr = call.getString("url"),
let x = call.getDouble("x"),
let y = call.getDouble("y"),
let w = call.getDouble("width"),
let h = call.getDouble("height"),
let url = URL(string: urlStr)
else {
call.reject("Missing parameters")
return
}
DispatchQueue.main.async {
self.containerView?.removeFromSuperview()
let cont = UIView(frame: CGRect(x: x, y: y, width: w, height: h))
cont.backgroundColor = .black
cont.layer.cornerRadius = 16
cont.clipsToBounds = true
let sp = UIActivityIndicatorView(style: .large)
sp.center = CGPoint(x: w/2, y: h/2)
sp.color = .white
sp.startAnimating()
cont.addSubview(sp)
self.spinner = sp
self.containerView = cont
self.bridge?.viewController?.view.addSubview(cont)
let player = VLCMediaPlayer()
player.delegate = self
player.drawable = cont
player.media = VLCMedia(url: url)
self.mediaPlayer = player
player.play()
call.resolve()
}
}
@objc func cerrar(_ call: CAPPluginCall) {
DispatchQueue.main.async {
self.mediaPlayer?.stop()
self.mediaPlayer = nil
self.spinner?.stopAnimating()
self.spinner?.removeFromSuperview()
self.spinner = nil
self.containerView?.removeFromSuperview()
self.containerView = nil
call.resolve()
}
}
public func mediaPlayerStateChanged(_ aNotification: Notification!) {
guard let player = mediaPlayer,
player.state == .playing,
let sp = spinner else { return }
DispatchQueue.main.async {
sp.stopAnimating()
sp.removeFromSuperview()
self.spinner = nil
}
}
}
In the Angular project, I’m using the plugin by manually registering it with registerPlugin from @capacitor/core. Specifically, in the service where I need it, I do the following:
import { registerPlugin } from '@capacitor/core';
const RtspVlcPlugin: any = registerPlugin('RtspVlcPlugin');
After this, I try to call the methods defined in the iOS plugin, like RtspVlcPlugin.iniciar({ ... }), but I get an UNIMPLEMENTED error, which suggests that the plugin is not exposing its methods properly to the Angular/Capacitor environment. That makes me believe the problem lies in how the Swift file is integrated or registered, rather than how it is used from Angular.
I’d appreciate any guidance on how to properly expose a Swift-based Capacitor plugin’s methods so that they are accessible from Angular. Is there any additional registration step or metadata I might be missing on the iOS side?
M2 Max Macbook Pro
When i click add package dependencies to add a package in xcode it crashes every time, no matter what i do.
any recommendations to work around this?
Hello,
I'm getting this error when launching a SpriteKit Swift game in iOS 18+ on an iPhone 11 Pro, whose shell is partly damaged in the back:
CHHapticEngine.mm:1206 -[CHHapticEngine doStartWithCompletionHandler:]_block_invoke: ERROR: Player start failed: The operation couldn’t be completed. (com.apple.CoreHaptics error 1852797029.)
Haptics do not work on this device, due to the damaged shell, so some error — which obviously occurs when calling start(completionHandler:) — is definitely expected; what is not expected is the main thread sometimes blocking for up to 5 seconds — although the method is not called from the main thread... the error itself is always displayed from some other secondary (system) thread. During this time, the main thread does not access the haptics engine at all; on average, it blocks once every four or five launches. In each launch (blocking or not), the 'nope' error is displayed ~5 seconds after trying to start the engine.
After going nuts with all kinds of breakpoints and instrumentation, I'm at a loss as to why the main thread would sometimes block...
Ideas, anyone?
Thank you,
D.
I'm trying to setup a macOS 26 build environment in a VM (using UTM and the virtualization framework Apple provides).
I have Xcode 26 installed and have logged into my Apple ID and verified that the team and other configuration looks fine in Xcode settings.
When trying to build the macOS app, I see errors saying the VM's device ID has not been registered. I have confirmed that the device ID is registered both in the Provisioning portal AND the downloaded .provisionprofiles (in Library > Developer > Xcode > UserData).
This problem appears on multiple targets (e.g. the main app and extensions).
If I try to manually provision the app, using the Provisioning portal, I can build the product, but it will not launch because of Gatekeeper issues.
Finally, signing to run locally doesn't work either. As the app launches, frameworks refuse to load because Team IDs don't match. With ad hoc provisioning, there are no Team IDs.
I've come to the conclusion that this just isn't possible.
Which is a shame because I need to support products with a build environment on macOS 15 and cannot move over to macOS 26 yet. I suspect many developers outside of Apple are in a similar position.
I have my project running perfectly fine on Xcode 16. However, in Xcode 26 it doesn't build due to an error that I do not understand. I have three files that pertain to this error:
// FriendListResponse.swift
import Foundation
struct FriendListResponse: Decodable {
var friendships: [Friendship]
var collections: [FriendCollection]
}
// Friendship.swift
import Foundation
struct Friendship: Decodable {
var createdAt: String
var friendId: Int
var friendUserId: Int // user ID of the friend
var friendUsername: String
var id: Int
var tagNames: [String]
}
// FriendCollection.swift
struct FriendCollection: Decodable {
var id: Int
var permalink: String
var tagNames: [String]
var title: String
}
On the first file, FriendListResponse.swift, I am the simple error message "circular reference." I do not understand how these self-contained structs could create a circular reference. Although I have other data types in my project, none of them are even referenced in these files except for Friendship and FriendCollection.
The FriendListResponse is a struct that is created from JSON values that are fetched from an API. This is the function that fetches the JSON:
public static func listFriends(username: String) async throws -> [Friendship] {
let data = try await sendGETRequest(
url: "people/\(username)/friends/list.json"
)
print(String(data: data, encoding: .utf8)!)
let decoder = JSONDecoder()
decoder.keyDecodingStrategy = .convertFromSnakeCase
let wrapper = try decoder.decode(FriendListResponse.self, from: data)
return wrapper.friendships
}
// Note: the function sendGETRequest is just
// a function that I have created that takes a set
// of parameters and returns a data object
// using the HTTP GET protocol. I don't think
// that it is related to this issue. However, if you
// think that it is, I can share the code for that.
This error has also happened in a few other cases within contained networks of my data structure.
I do not know why this error is only appearing once I launch Xcode 26 beta with my project files. I would think that this error also would appear in Xcode 16.4.
Any help would be greatly appreciated in my process to compile my project on Xcode 26!
I am writing to report multiple issues encountered after updating to Xcode 26 Beta, which have significantly impacted my project's compilation and functionality. My project can run normally in Xcode16.3 version, Below are the specific problems, along with the steps I took to address them and the subsequent errors that arose:
Symbol Not Found Error for _NSUserActivityTypeBrowsingWeb
After updating to Xcode 26 Beta, my project failed to build with the error: "Symbol not found: _NSUserActivityTypeBrowsingWeb." To resolve this, I removed the MobileCoreServices framework from the Build Settings, as it appeared to be related. However, this led to a new error, indicating that this change introduced further complications.
Clang++ Error: No Such File or Directory 'OpenGLES'
Following the resolution of the first issue, I encountered a new error: "iOS clang++: error: no such file or directory: 'OpenGLES'." To address this, I added the OpenGLES.framework to the Build Phases. While this resolved the clang++ error, it triggered additional errors, suggesting that the underlying issue persists or new dependencies are conflicting.
Recurring XIB File Compilation Errors
My project uses XIB files, and every time I attempt to compile and run, Xcode reports errors related to different XIB files. Notably, when I open the reported XIB file, no errors are displayed within the Interface Builder. After saving or inspecting the file, the compilation error temporarily disappears, only for another XIB file to trigger the same issue in the next build. This creates a repetitive cycle. I have confirmed this is not a caching issue, as I clean the build cache (Product > Clean Build Folder) before each run. If I skip cleaning the cache, the OpenGLES-related error (Issue 2) reappears, indicating potential interactions between these problems.
These issues have made development with Xcode 26 Beta extremely challenging, as each attempted fix seems to introduce new errors, and the XIB issue creates a persistent loop. My setup includes:
Xcode Version: 26.0 beta 2 (17A5241o)
macOS Version:15.4.1 (24E263)
I am trying to integrate fastlane, which relies on xcodebuild. So this is my first experience with xcodebuild. Whenever I run a command to test or build the target in the folder where all the files of the project are stored, the action failes with Unable to find a device matching the provided destination specifier
For example I might be running this command:
xcodebuild \
-project Hoerspielzentrale.xcodeproj \
-scheme HoerspielzentraleUITests \
-destination 'platform=iOS Simulator,name="Screenshot Simulator”' \
test
However the mentioned error is returned:
xcodebuild: error: Unable to find a device matching the provided destination specifier:
{ platform:iOS Simulator, OS:latest, name:"Screenshot Simulator” }
The requested device could not be found because no available devices matched the request.
I can confirm that the simulator exists, is available and it can be booted. I have tried different simulators, different schemas, referencing them by their identifier, switching Xcode Versions, reset all simulators, derived data and build folder. After the error a complete list of all available destinations can be found, where I can see the simulator I try to use.
Available destinations for the "HoerspielzentraleUITests" scheme:
{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
{ platform:iOS Simulator, id:961DC569-9931-419A-B46E-769AAFA73EA2, OS:18.5, name:Screenshot Simulator }
{ platform:iOS Simulator, id:961DC569-9931-419A-B46E-769AAFA73EA2, OS:18.5, name:Screenshot Simulator }
{ platform:iOS Simulator, id:5E51FD98-C451-472F-9CDE-08D49E6B737B, OS:18.5, name:Screenshot Simulator Pro }
{ platform:iOS Simulator, id:5E51FD98-C451-472F-9CDE-08D49E6B737B, OS:18.5, name:Screenshot Simulator Pro }
The rest of the list was omitted.
I am currently completely stuck.
Thank you
I've been experimenting with using local LLMs in place of ChatGPT in coding assistant. I was able to do this using LM Studio. I found that switching LLMs was a little clunky, but eventually, I was able to make it work. However, none of the LLMs I tried were able to generate error free Swift code. Not surprising at this stage.
I decided to train an LLM (Llama3.1-8b) with Apple's Swift Programming language reference, using Open WebUI, and this worked. I was able to get the LLM to generate working Swift Code that I was able to test in Playgrounds.
The problem I'm having now is that Xcode is locked up on the last LLM I tried out. I've tried deleting all the LLM providers in Settings, leaving only ChatGPT, but Xcode still defaults to the local LLM, even though it throws errors if you try to ask it a question.
I've tried reinstalling Xcode, downloading new versions of sample Xcode projects, and deleting various data files, all to no avail.
I would really like to test the new LLM I've trained in coding assistant, but right now, Xcode won't let me. It won't even let me revert to ChatGPT.
I've been messing around with converting my app icons to use Icon Composer. My app has multiple app icons, but I've noticed that I cant seem to set .icon files using the alternate app icon api. I believe this is due to the requirement that alternate app icons live in the Assets Catalogue but .icon files go anywhere in your project. Is there any plan to support this? Or am i missing something?
I was able to successfully set a .icon file for the primary app icon.
I added a new liquid glass icon built with Icon Composer to my app. It works and looks great on iOS 26 but Xcode complains that required icon files for older versions are missing.
I still have the old AppIcon in my Asset Catalog but it seems like it's not being used.
How do I configure Xcode to use the old icons for iOS 18 and the new icon for iOS 26?
Hi all,
Im trying to upload an app to the App Store, the app is made in Unity, well I built the app there and then open the Xcode project, from there set some fields and now when I have to go to Product>> Archive I get an error always, could you please tell me what is this and how to fix?
unsupported option -mno- thumb for target arm64-apple-ios 15.6
Im using Xcode 16.4 which I think is the latest version released. Thanks for any clue about this, Im really lost
I have a project that uses local SPM packages for modularization. In one of my local SPM packages I have a .storyboard file that gets packaged as a resource in the SPM package and consumed inside the parent.
In Xcode 15.4, the resource bundle for my local SPM Package has the bundle id PackageName-TargetName-resources. I use this inside a parent storyboard to reference the storyboard from the SPM package.
In Xcode 16, however, the resource bundle for my SPM Package gets assigned the bundle id packagename.TargetName.resources.
This, of courses, introduces a crash in builds of my app done with Xcode 16 due to the incorrect bundle id.
There is no documentation of this change that I could find by Apple or by the SPM team.
Apple Team: There is a Feedback Report FB14803020 with the build files attached from Xcode 15.4 and Xcode 16. I cannot attach those here due to the public nature of this forum
Hello, im getting popping / crackling sounds from my Macbook Pro (M4 2024) speakers.
This happens when you do many certain tasks like click buttons or toggling switches when xcode has a simulator open and any background audio is playing, like spotify.
The speakers go crazy especially when starting the simulator in xcode with music in background.
Ive tried:
Using blackhole, and changing audio output in the simulator app
Deleting both .plist files form preferences file.
"coreaudiod" trick in terminal
restarting many times
different xcode versions and simulators and swift files
Nothing has worked. Any help?
Is there a way to permanently disable PHASE SDK logging? It seems to be a lot chattier than Apple's other SDKs.
While developing a RealityKit app that uses AudioPlaybackController, I must manually hide the PHASE SDK log output several times each day so I can see my app's log messages.
Thank you.
It's not yet fully clear why and when does this crash occur, but I'm creating this post so there's a centralized thread for this.
Some hints collected so far:
The crash is occurring for existing Xcode projects opened with new Xcode 26.0 beta (17A5241e); no one's been able to reproduce on a project created in Xcode 26. I even tried creating a project with Xcode 16.2 and open it in Xcode 26, but it's all working fine there (don't have older Xcode at the moment, to try with many versions)
It crashes right at the line of code that initializes URLSessionConfiguration. If you call URLSession() without parameters (which is deprecated as of iOS 13), the session initializes without the crash.
It's NOT occurring only for libraries installed through package manages. In a project where it crashes, one should be able to reproduce by adding URLSessionConfiguration.default as the first line in didFinishLaunchingWithOptions
It crashes when running an app on an iOS 26 simulator. (I don't have a device running beta iOS 26 to test on it!) It's working fine when running the app on a simulator or a device running iOS 18 or older.
Related issue on Firebase GitHub repo: https://github.com/firebase/firebase-ios-sdk/issues/14948
Sorry to not be able to provide more info at the moment. I wanted to report this so in case someone from Apple knows about it, we could at least get some feedback or workarounds, until fix is released -- and, to prevent us all from duplicating this report in repositories of each library, as this isn't related to libraries.
A method in my app now requires the override keyword when compiling with Xcode 26 beta / iOS 26 SDK, but if I add it, the current official Xcode 16.4 (iOS 18 SDK) throws a compile error. It's about 'toggleSidebar(_:)' in UIViewController.
The problem is:
Apple expects our apps to be ready for iOS 26 launch this fall, so I need to be actively developing and testing in the Xcode 26 beta now.
At the same time, I still need to submit updates to the App Store using the current official Xcode 16.4 until iOS 26 officially launches.
I'm using a single .xcodeproj file and can't keep manually adding/removing -DIOS_SDK_26_OR_LATER in Build Settings multiple times a day.
How to fix it and why isn't there a straightforward #if sdk(>=26.0) type of check for compile-time in Swift?
It's really frustrating to manage this override conflict.
We use several UIKit and AVFoundation APIs in our project, including:
setAlternateIconName(_:completionHandler:)
getAllTasks(completionHandler:)
loadMediaSelectionGroup(for:completionHandler:)
Moreover, we use the Swift Concurrency versions for these APIs:
@MainActor
func setAlternateIconName(_ alternateIconName: String?) async throws
var allTasks: [URLSessionTask] { get async }
func loadMediaSelectionGroup(for mediaCharacteristic: AVMediaCharacteristic) async throws -> AVMediaSelectionGroup?
Everything worked well with these APIs in Xcode 16.2 and earlier, but starting from Xcode 16.3 (and in 16.4), they cause crashes. We've rewritten the APIs to use completion blocks instead of async/await, and this approach works.
Stack traces:
setAlternateIconName(_:completionHandler:)
var allTasks: [URLSessionTask] { get async }
loadMediaSelectionGroup(for:completionHandler:)
Also, I attached some screenshots from Xcode 16.4.