Build, test, and submit your app using Xcode, Apple's integrated development environment.

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

Build/Archive failure in Xcode 16.2 after updating macOS to 26.2
We are encountering a build and archive failure in Xcode after updating our development machine to macOS 26.2. Environment: macOS: 26.2 Xcode: 16.2 iOS Deployment Target / Runtime: iOS 18.5 App Type: Production iOS app (App Store distribution) Issue: Before updating macOS, the project built and archived successfully. After the macOS 26.2 update, archiving fails consistently, even though no major changes were made to the project code or configuration. Certificates, provisioning profiles, and signing settings are correctly configured. The issue appears to be related to the macOS/Xcode environment rather than application logic. Steps to Reproduce: Open the existing iOS project in Xcode 16.2. Select the App Store distribution scheme. Attempt to Archive the project. Archive/build fails. Expected Result: Successful archive allowing upload to App Store Connect. Actual Result: Archive fails after macOS 26.2 update. Additional Info: This post is linked to Apple Developer Technical Support Case-ID: 18413014.
2
0
102
1w
XCode: cannot pair devices
Since upgrading to a new Mac I have been unable to pair XCode to devices using the Devices and Simulators window. When I press the + button I get 'no devices found'. I have a second Mac which works as expected. When I try 'xcrun devicectl list devices' the phone I've connected shows up with limited information and is 'unavailable'. If I run 'sudo xcrun devicectl list devices' then I get a message telling me not to run xcrun as root but also the full information about the phone as expected, plus it shows the status as 'available (paired)'. So the device seems to be defined with root privileges but XCode is not. I am running XCode 26.2 but this issue has been around since 26.0. Any suggestions welcome.
1
0
115
1w
Xcode Simulator error
Following is an error I encounter when trying to run a foundation model function in simulator. Error Domain=FoundationModels.LanguageModelSession.GenerationError Code=-1 "(null)" UserInfo={NSMultipleUnderlyingErrorsKey=( "Error Domain=ModelManagerServices.ModelManagerError Code=1026 "(null)" UserInfo={NSMultipleUnderlyingErrorsKey=(\n)}" )} Its a swift playground I'm building in xcode and works fine in the preview and on a real device too but since it's my submission for the swift student challenge I need it to run on the simulator. I have updated my macOS to latest version of Tahoe(26.3) and Xcode is also on latest version. The simulator I run the playground is also on ios and iPadOS 26. I have set my region to US and have turned on Apple Intelligence on my mac too. Any suggestions on how to fix the issue?👾
1
0
125
1w
Are there workarounds for these bugs in Xcode?
Are there workarounds for the following bugs in Xcode 16.3? I'm looking for workarounds instead of trying newer versions of Xcode because, from what I read, the Xcode release notes do not mention these issues being fixed. First bug: Resizing a NSSplitView in the UI Editor is buggy. When you try to use the divider, it just does not work as expected. In the case of a vertical split, the bottom view gets shrunk whatever you try to do. Second bug: When you type: (IBAction) in the source editor, you get the following buggy template (extra ')' on the right): - (IBAction)<#selector#>:(id)sender)
3
0
86
1w
Can not delete "Other installed Platforms"
I recently found out that my System Storage is at about 200GB. I checked my XCode and found these "ohter installed platforms" (screenshot1). I can delete them there but as soon as I restart my computer, they will show up again. I found the folder /System/Library/AssetsV2/com_apple_MobileAsset_iOSSimulatorRuntime which uses 75GB and Im pretty sure that these simulators are the ones in XCode. This folder doesnt change a bit when I delete the simulators in Xcode. I cant delete the folder because of permissions... anyone an idea? Btw: 200gb systemdata of 500gb seems pretty miserable. Kind regards
2
0
66
1w
Xcode Cloud is unable to connect to the repository
Hello, I am trying out Xcode Cloud for the first time. I could connect to Github in the initial setup and had a few failed builds (package resolution error), which I resolved fairly quickly. Now whenever I am trying to build, I get the following error: Xcode Cloud is unable to connect to the repository “<respository-name>”. Reconnect the repository to resume builds. I am unable to remove the connection from settings as well because it's stuck in a loading state. Is there a way to fix this?
18
4
11k
1w
Q&A Summary for Code-along: Experiment with coding intelligence in Xcode 26
We received many great questions from the community during Code-along: Experiment with coding intelligence in Xcode 26. Here are the highlights from the questions submitted by the audience during the event. What models does coding intelligence features support In Xcode? Xcode integrates directly with ChatGPT and Claude user accounts. You can also configure Xcode to integrate any model provider that supports the Chat Completions API, such as models that you access with an API key. You can also download and run a local model on a Mac with Apple silicon. Setting up coding intelligence provides all of the information you need to get started with Xcode’s direct integration with ChatGPT and Claude, as well as how to set up Xcode to access other providers. Does Coding Intelligence have access to Apple API and developer documentation? How does it stay up to date with the latest SwiftUI API? Coding agents are great because they talk to a model, generate code and fix errors, but they also have access to tools, which make a significant difference in their capabilities. Xcode provides tools for the agent to use, including the ability to search Apple’s documentation and, code snippets. As an example, you can ask for a new API that was released in iOS, and if the model doesn't have this knowledge, the agent will call the tool to search for the documentation and bring that context into the conversation. As an organization, we do not have permission to share our codebase with any AI model due to security reasons. If we enable coding intelligence and give it access to our codebase, will the code be shared with Apple? Will OpenAI or Anthropic have access to my entire project? Privacy is fundamental to our design. When you connect an AI subscription account (like an account with OpenAI or Anthropic), the connection is only between you and that service. Apple does not act as an intermediary, and never sees the code sent to these services. Because this interaction happens directly between the you and your provider, the security and privacy of your code is determined entirely by your existing agreement with your provider. What exactly does the agent have access to? Only the files in the scope of the project? By default, the agent works in the directory of your project, and can access all files in that directory. This includes code file, assets, and your Xcode project configuration file. Does coding intelligence remember previous conversations? Each time you start a new conversation window, it resets the context of the conversation, but you can always go back to a previous conversation you had and continue and iterate on a previous idea. If a result contains errors or did not go in a direction you are happy with, you can use the history to go back to any point in time. Writing code with intelligence in Xcode goes into detail on how you can use these features. For command-line tools (Claude Code, OpenAI Codex), I can create guidelines as Markdown with rules or project descriptions. Does Xcode Agentic Coding take these into account, or should I define them differently? You can add skills that you’ve created, hints about Xcode and your project to configuration files, and other files supporting your use of coding intelligence such as AGENTS.md or CLAUDE.md files, to the respective Codex and Claude Agent directories that Xcode uses exclusively: ~/Library/Developer/Xcode/CodingAssistant/codex ~/Library/Developer/Xcode/CodingAssistant/ClaudeAgentConfig For more information on configuring agentic coding tools that run inside Xcode, see Customize the Codex and Claude Agent environments. How do you add a Model Context Protocol server for the Xcode agent to be able to access? You can add additional Model Context Protocol (MCP) servers in Xcode with product-specific configuration files so the agents can use those MCP servers from within Xcode. Locate the files needed to configure those additional MCP servers in the same directory where you set other customizations for Codex or Claude Agent, listed above.
0
0
622
1w
AVP, Developer Strap v2, Ethernet connection and Xcode
Hi, I wonder if there's something that can be configured to force Xcode (and preferably MVD too) to use Ethernet connection between Mac Mini and Apple Vision Pro (over a USB hub, not a direct USB connection)? If I connect AVP to Mac directly via USB, the bridge gets created and both MVD and Xcode default to it, which is great because of higher speed and lower latency. My problem is that I work with external camera, so I can have either the camera, or the Mac connection, but not both. I tried to solve that by plugging in a small active USB hub, so the strap and camera are connected to it, plus it has Ethernet adapter, which is plugged into Mac port. I tried with internet sharing on Mac - AVP has internet access, I can ping AVP from Mac, but Xcode and MVD still use wifi. I tried to manually configure bridge without internet sharing - same effect. I tried to make the bridge highest priority connection - nothing changed. I tried to force routing to AVP IP over the bridge - nothing (and it seems that my routing entry went missing after some time and was replaced by "use wifi interface"). So - is there something more I can do to make at least Xcode go over the cable? Debugging over wifi often takes forever.
0
0
54
1w
Place an app on a family device
I had a free developer account and now have a paid account. I can now install unlimited number of apps on my personal devices. I want to install more than 3 apps on a device of a family member. The device of this member has been registered under Certificates, Identifiers & Profiles. When I try to install apps with xCode on this family device I still get the message that I reached the limit of 3 apps (free account). By signing & capabilities I use the paid account as team. I have deleted all the apps on that device where installed with the free account, restarted the device and restarted xcode but the problem still exists.
0
0
39
1w
Apple Intelligence cant change Xcode build target...?!
› It is reasonable to assume Xcode AI integration means AI being able to change the build target... “Why can Xcode Intelligence see source files but not .xcodeproj/project.pbxproj for direct edit?” “Is this a known limitation/bug in Xcode 26.3 RC Project Context or MCP Xcode Tools?” “Any required entitlement/setting beyond Intelligence > Xcode Tools for build-setting edits?”
2
0
46
1w
App alternative icon not working when archieve.
I add the following info in the build settings of my app. Then I also add the icon to my asset. I build the app, it works normally, but I notice that when I changed the icon to 'AppIcon-Defaults', The icon change alert didn't appear. but it succeeds . I uploaded the archive to App Store I got: ITMS-90895: Missing Icon - The Info.plist key CFBundleIcons.CFBundleAlternateIcons contains an entry “AppIcon-Defaults” that references asset “AppIcon-Defaults.” No such asset is present in the asset catalog. Then I use xcrun --sdk iphoneos assetutil --info Assets.car to check the assets inside the archieved app, It have the asset.
3
1
580
1w
Simulator since XCode update completely broken
Since one of the last updates of XCode, there are two very annoying bugs in the simulator that just don't get fixed. What's going on Apple? You kill my productivity. There is a red bar reading "rdar" and some numeric string at the top. You can get rid of it by going to Settings -> Developers -> Zoom -> Larger Text (then change it back). Took a while to find that. I have a German laptop with a QWERTZ keyboard layout. Now when I type, it somehow sends keys from an US keyboard to the simulator. Since I don't have the labels, I don't know what the hell I'm typing. Very frustrating. Please fix this.
3
1
134
2w
Localizing NSAlarmKitUsageDescription
I've added NSAlarmKitUsageDescription to Info.plist and InfoPlist.xcstrings. The localized string is being used when I run the app, but Xcode is marking the string as "stale" in InfoPlist.xcstrings. This doesn't occur for any of the other UsageDescription strings in our app, such as NSPhotoLibraryUsageDescription and NSSiriUsageDescription. This occurs in both Xcode 26.2 and Xcode 26.3 RC. Is this a known issue? Should I just mark the string as being managed "Manually" instead of "Automatically" to make the warning go away?
1
0
37
2w
protocol witness error in Playgrounds
I'm importing SwiftUI, Foundation and Charts into an iOS app I'm writing in Swift in Xcode Playgrounds and am getting this error: error: Couldn't look up symbols: protocol witness table for Foundation.Date : Charts.Plottable in Charts the code looks like this in just two example files: file 1, the view import Foundation import SwiftUI import Charts import PlaygroundSupport struct FirstChart_WithDates: View { private let data = ChartDateAndDoubleModel.mockData(months: 3) var body: some View { Chart(data) { item in BarMark( x: .value("Label", item.date, unit: .month), y: .value("Value", item.value) ) } .padding() .aspectRatio(1, contentMode: .fit) .dynamicTypeSize(.accessibility1) ChartDateAndDoubleModelView(data: data) } } struct ChartDateAndDoubleModelView: View { var data: [ChartDateAndDoubleModel] var body: some View { VStack { HeaderRowView(texts: ["date", "value"]) ForEach(data) { datum in HStack { Text(datum.date.formatted(date: .abbreviated, time: .omitted)) .frame(maxWidth: .infinity) // TODO: Format for 2 decimal places. Text(datum.value, format: .number.precision(.fractionLength(2))) .frame(maxWidth: .infinity) } } } .padding(.bottom, 8) .overlay(.quaternary, in: .rect(cornerRadius: 8).stroke()) .padding() } } struct HeaderRowView: View { var texts: [String] var body: some View { HStack(spacing: 2.0) { ForEach(texts, id: \.self) { text in Text(text) .padding(4) .frame(maxWidth: .infinity) .background(.quaternary) } } .font(.headline) .mask(UnevenRoundedRectangle(topLeadingRadius: 8, topTrailingRadius: 8)) } } and file 2, the model: import Foundation import SwiftUI import Charts // ChartDateAndDoubleModel.swift // // // Created by Michael Isbell on 2/10/26. // public struct ChartDateAndDoubleModel: Identifiable { public let id = UUID() public let date: Date public let value: Double } public extension ChartDateAndDoubleModel { static func mockData(months: Int = 5) -> [ChartDateAndDoubleModel] { var data: [ChartDateAndDoubleModel] = [] let calendar = Calendar(identifier: .gregorian) let currentDate = Date() for month in 0..<months { //add month to current date and append to data data.append( ChartDateAndDoubleModel( date: calendar.date(byAdding: .month, value: month, to: currentDate)!, value: Double.random(in: 0...1000) ) ) } return data } }
1
0
52
2w
XCTFail immediately aborts the test in Xcode 26 — no retry on failure
Hi, I’m seeing an unexpected change in how XCTFail behaves in UI tests after updating Xcode. I use the following helper method: `func waitForExistance(file: StaticString, line: UInt) -> Self { if !(element.exists || element.waitForExistence(timeout: Configuration.current.predicateTimeout)) { XCTFail("couldn't find element: \(element) after \(Configuration.current.predicateTimeout) seconds", file: file, line: line) return self } else { return self } }` In Xcode 16.4, this worked as expected: – when an element wasn’t found, XCTFail was triggered, but the test continued running, allowing my retry logic to execute. After updating to Xcode 26.1 / 26.2 - the test now immediately aborts after XCTFail, without executing the next retry. The logs show: `t = 113.22s Tear Down t = 113.22s Terminate com.viessmann.care:81789 *** Assertion failure in -[UITests.Tests _caughtUnhandledDeveloperExceptionPermittingControlFlowInterruptions:caughtInterruptionException:whileExecutingBlock:], XCTestCase+IssueHandling.m:273 Test Case '-[UITests.Tests test_case]' failed (114.323 seconds). Flushing outgoing messages to the IDE with timeout 600.00s Received confirmation that IDE processed remaining outgoing messages` It looks like XCTFail in Xcode 26 is now treated as an unhandled developer exception, which stops the test execution immediately, even when it’s called inside a helper method. This was not the case in earlier versions. My questions: Is this a regression in XCTest? Or an intentional change in how XCTFail behaves in newer Xcode versions? Should failures now be reported differently (e.g., using record(.init(type: .assertionFailure, …))) if I want to continue the test instead of aborting it? I would like to restore the previous behavior where the failure is logged without terminating the entire test, so my retry mechanism can still run. Has anyone else run into this after upgrading? Thanks in advance! If you’d like, I can also add recommended workarounds that actually work with Xcode 16.4 (e.g., replacing XCTFail with a non-terminating issue record).
4
3
500
2w
String Catalog Symbols: No Reference-Language Fallback for Partially Translated Locales
I'm having troubles converting my string catalog to symbols because for partly translated languages there is no fallback to the reference language. Let me give you an example. Example Assume an app that supports two languages: English and Japanese. The app is very simple and has only two strings, using symbols in a String Catalog: Key: .helloWorld → “Hello World!” Key: .info → “Information” Case 1: No Japanese translations If I launch the app in Japanese and neither string is translated, English is used as a fallback. The UI shows: “Hello World!” “Information” This is exactly what I would expect. Case 2: Only one string translated Now assume I translate only one string into Japanese: .helloWorld → “こんにちは世界” When I launch the app in Japanese now: .helloWorld correctly shows “こんにちは世界” .info shows info, not “Information” So instead of falling back to English, the key is displayed. This issue does not pop up when I don't use symbols. Because then, my SwiftUI Text elements contain the English ideal text as a (kind of) key. I assume for commercial apps all strings are always translated into all supported languages. But this is not the case for apps where translations happens through crowd translations. Check the following link. There you will see that only English (reference language) and German (my native language) are 100% translated. Others will follow over time. https://poeditor.com/join/project/J2Qq2SUzYr For now, I guess I'll have to avoid symbols. Or is there a better way to handle this?
1
0
59
2w
(Xcode 26.0 → 26.2) Constant UI flickering in split view mode
Hello, I’ve been experiencing a persistent issue in Xcode since version 26.0, and it is still present in 26.2. When using the split view to display two files side by side, the area in the top‑right corner of the window (the inspector / options panel) starts flickering continuously. This happens regardless of whether I’m using the light or dark theme, and even with the Liquid Glass effect disabled in macOS settings. None of these changes have any impact on the issue. I have already submitted a bug report through Xcode (Feedback Assistant), but the issue is still present as of today. The flickering makes the interface difficult to use and visually very distracting. I’ve attached a video to clearly show the issue. I will review the attachment at the time I publish this post. Thanks in advance for any help or feedback. Video 1 https://www.icloud.com/iclouddrive/077l-R7Ybvxz89NI-B7DliEuA#xcode_bug1 Video 2 https://www.icloud.com/iclouddrive/0f6bJp48ioGRdkYiA2U4sI-cg#xcode-bug2
5
1
261
2w