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

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

Attributes inspector in Xcode 26
It has been two years since I wrote my a SwiftUI app, and I wanted to start again in Xcode 26. I can no longer see the attributes inspector when I select an element in the canvas. This was an Xcode feature that was very helpful as I am still a novice. Has this feature been deprecated in Xcode 26? And if not, please help explain how I can find and use it.
3
3
321
2w
Custom font doesn't appear on Storyboard custom font list
Hi everyone, (you can answer in french) I’m french-rookie in xcode, and I have a problem: I’m trying to choice my custom font to add it in my Main.storyboard button, but it not works. I have my « Font provided by application » line in my Info.plist, with the name of my font in [0] (See images below) When I’m on storyboard button, I chose « custom » in font selector, then display font list but my custom font doesn’t appear. I already tried to install the font in my mac, but still stucked, nothing change 😭 Could you help me please? Thanks a lot (I specify that I scrupulously followed the way of doing explained on the Apple official page: Adding a Custom Font to Your App )
8
3
3.6k
Sep ’25
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).
3
3
203
1w
Code Coverage Not Accurate in Xcode 26
Description: I’m noticing that the code coverage metrics in Xcode 26 are not accurate compared to earlier versions. In Xcode 15, the same set of unit tests shows around 38% coverage, but in Xcode 26, even though all the tests are running successfully (for example, the SegmentedUI test cases), the code coverage is displayed as 0%. Has anyone else observed this behavior in Xcode 26? Is there any known issue, workaround, or configuration change required to get the correct coverage report? Environment: Xcode 26 iOS 18 SDK Unit tests running under XCTest Any insights or suggestions would be appreciated.
1
3
239
Nov ’25
Xcode 26.1 ChatGPT very slow
ChatGPT in Xcode 26.1 is super slow for me, anyone else? The response returns quickly but the preview window takes a few seconds per line. What it used to do in a few seconds on 26.0 now takes tens of minutes. Anyone else running into this and have suggestions? I'm using the minimal setting on a fast internet connection. M2 Pro MBP, macOS 26.1.
1
3
163
Nov ’25
Xcode 16.2 not seeing iOS 18 devices
Ever since I updated to Xcode 16.2, no device running iOS 18 shows up in Xcode. I can see the devices in Finder and Apple Configurator, but not in Xcode. When I run xcrun devicectl list devices, I also do not see the devices, so I assume the issue is in CoreDevice somewhere. I've tried many things I've seen suggested in similar threads (toggling developer mode, reinstalling Xcode, using a different physical cable, etc) and so far nothing has helped. This same behavior is also happening for my entire development team, which has been as difficult as you might imagine. Any info on how to resolve this would be much appreciated.
7
3
6.8k
Feb ’25
iOSSimulatorRuntime download failed - Bad request
Hello, I'm having issues trying to Install the iOS 26.0 + iOS 26.0.1 Simulator on Xcode 26.0.1. I'm getting this error Download failed as the server said it was a bad request. (Asset download for com.apple.MobileAsset.iOSSimulatorRuntime 39434c057e7b18d2f1447aeb47e9bb6b6dbff077) I have attached the full logs. Thanks xcode-error.txt
0
3
302
Nov ’25
XCode problem
Right now, I am trying the tutorial for SwiftUI from the Apple Developer Program inside of Xcode, but I encountered a problem. Inside of the selectable canvas mode in Xcode, I wanted to command-control-click the element (in this case, a text) to bring up the editing popover and select "Show SwiftUI Inspector." For some reason, on the popover menu, the only option was "Embed." I only wanted the menu point Show SwiftUI Inspector, and I also tried the shortcut Ctrl+Option, but nothing worked. Now is there another method to get to this menu? Or can you help me with that? Noah
1
3
106
Nov ’25
PhotosUI does not build with UIKit and WidgetKit in XCode26
To reproduce this bug create a new Xcode Project for IOS choose UIKit. In the app delegate add the following lines. As you can see in the above image . Line 19 with the initialization of PHPickerViewController has no compilation failure. Now lets add import WidgetKit As soon as widgetKit is imported a compiler error is thrown which is PHPickerViewController is not in scope. This worked with Xcode 16.4 It was possible to have a swift file with both WidgetKit implementations and PhotosUI implementations. This behavior has changed in Xcode 26/26.0.1 . Does anybody know why this happens , could not find any clues within the different versions of documentations. P.S Found a work around which raises further questions Adding import SwiftUI fixes this problem , I am genuinely curious on how this is happening on a compiler level. LINKS To my previously published post :https://developer.apple.com/forums/thread/804059
0
3
187
Oct ’25
Xcode 26 doesn’t recognize ChatGPT Plus subscription and triggers free daily limit
Hi everyone, Since updating to Xcode 26, I’ve been running into an issue with the new ChatGPT integration inside Xcode. Even though I have an active ChatGPT Plus subscription (GPT-4 or GPT-5) and I’m signed in to my OpenAI account, Xcode doesn’t seem to recognize my paid plan. After reaching the free usage limit, I get the following message: “Over daily limit. ChatGPT in Xcode will be unavailable for up to 24 hours. For higher limits, sign in with a paid ChatGPT account or upgrade to ChatGPT Plus.” The issue is that I am already logged in with my ChatGPT Plus account, and everything works fine on the ChatGPT web app — but inside Xcode, it keeps treating me as a free user. Here’s what I’ve tried so far: • Signing out and back into ChatGPT from within Xcode • Restarting Xcode and macOS • Verifying that I’m logged in to ChatGPT in Safari • Updating both macOS and Xcode to the latest versions None of these steps have resolved the issue. It seems like Xcode isn’t syncing properly with OpenAI authentication, and therefore it applies the free-tier limits even for paid accounts. Has anyone else encountered this problem? Is there any way to force Xcode to reauthenticate with OpenAI or link it properly to a ChatGPT Plus account? System setup: • Mac mini (Apple M2, 16 GB RAM) • macOS Tahoe 26.0.1 • Xcode Version 26.0.1 (17A400) Here’s the error message I’m seeing:
2
3
233
Oct ’25
As soon as I run the app in debug the breakpoints are disabled
After updating my system to macOS Tahoe 26.1 and Xcode 26.1, all breakpoints in my project fail to work. When I run the application in Debug mode, any enabled breakpoint (blue) immediately becomes disabled (grayed out) the moment the app launches. The application runs, but the debugger never stops. This issue occurs in any location, including in the application's init() method, which should always be hit. This behavior suggests that the LLDB debugger is failing to attach to the process at launch or is being instructed not to enable breakpoints. System Configuration: Mac Model: MacBook Pro 14" (2021), Apple M1 Pro macOS Version: Tahoe 26.1 Xcode Version: 26.1 Project Type: SwiftUI App for macOS Troubleshooting Steps Performed (All Unsuccessful): We have performed an extensive series of troubleshooting steps to resolve the issue, none of which have worked. These steps include: Basic Project Cleaning: Cleaned the build folder (Product > Clean Build Folder). Deleted the entire DerivedData directory. Deleted the project's xcuserdata folder. Xcode & System Procedures: Restarted Xcode multiple times. Rebooted the Mac multiple times. Reinstalled Xcode Command Line Tools using xcode-select --install. Reset the Xcode path using sudo xcode-select --reset and sudo xcode-select -s /Applications/Xcode.app/Contents/Developer. Forced an update of the system's shared cache with xcrun simctl runtime dyld_shared_cache update --all. Project Build Settings Verification (for Debug configuration): Build Configuration: Verified that the "Run" scheme is set to Debug. Optimization Level: Confirmed it is set to No Optimization [-O0]. Debug Information Format: Confirmed it is set to DWARF with dSYM File. Strip Swift Symbols: Confirmed it is set to No. (This was a new setting noticed after the Xcode update). Enable Hardened Runtime: Attempted setting this to both Yes and No. The issue persists in both cases. Validate Workspace: Confirmed it is set to Yes. Code Signing: Verified that "Automatically manage signing" is enabled with a valid team. Manually deleted and re-created the "Apple Development" certificates via Xcode's Accounts settings. Direct LLDB Testing: Created a ~/.lldbinit file. Using breakpoint list, confirmed that LLDB starts with "No breakpoints currently set," indicating that Xcode is likely not passing the breakpoints to the debugger. Using settings set target.process.stop-on-entry true, confirmed that the app still does not stop on entry, suggesting the debugger is failing to attach to the process at all. Conclusion: Given that all standard and advanced troubleshooting steps have failed, and the issue started immediately after updating both macOS and Xcode to a non-public release (Tahoe 26.1 / Xcode 26.1), this appears to be a regression or a bug in the new development environment. The failure of stop-on-entry strongly suggests a fundamental issue with the debugger attachment process on this specific OS and Xcode combination.
1
3
226
Nov ’25
ERROR: Unrecognized attribute string flag '?' in attribute string "T@"NSString",?,R,C" for property debugDescription
Hello, I'm seeing many errors like this in the Xcode debug console when I build and run my app: ERROR: Unrecognized attribute string flag '?' in attribute string "T@"NSString",?,R,C" for property debugDescription The app project makes heavy use of Logger(), and I suspect it is related to that logging in some way, but I haven't been able to narrow down the issue to specific log calls. I have Category, Subsystem and Timestamp enabled in the Xcode console, but none of those are displayed for this output. What causes this? Or how can I better narrow down the source?
4
3
1k
Feb ’25
FileProvider fails to trigger re-enumeration
I'm working on a FileProvider which allows access to encrypted files in Dropbox; I can successfully read and present the decrypted files, so I know it's basically working. But I'm having problems getting FileProvider to re-enumerate a folder when its encryption status changes. When the FileProvider receives an update notification saying a folder is now encrypted, I use signalEnumerator to re-enumerate the folder: FileProviderExtension.manager?.signalEnumerator(for: existingItem.itemIdentifier, completionHandler: { (ourError : Error?) -> Void in       if let ourError = ourError {           log("notifyCallback: mount / unmount failed re-enumeration: \(ourError)")       } else {           log("notifyCallback: mount / unmount signalled re-enumeration; pending")       } }) The log reports that the re-enumeration is pending... but as far as I can tell, neither enumerateItems nor enumerateChanges is called on the folder's item unless a Finder window is actually open for that folder. This means that, when an app other than Finder tries to access the files through the filesystem, it doesn't see the updated set of filenames. (For further reference: I've added code to both enumerateItems and enumerateChanges, so that if the call has been triggered by a recent folder-encryption notification, it retrieves a complete set of items from the Dropbox folder. If a retrieved file has an encrypted filename, it reports it as a modified item and returns its filename in-clear; if the filename isn't encrypted, it doesn't return the item (for enumerateItems) or returns it as a deleted item (for enumerateChanges). This approach seems to work successfully for listing folders with a constant state; it's only if the user encrypts / decrypts a folder without currently having a Finder window open inside that folder that I'm not seeing a refresh.) Any advice on how I can force a re-enumeration without a Finder window currently being displayed?
2
2
1.1k
4d
Xcode 15 will not connect to ios17 device via network
I'm unable to debug on iPhone 12 running iOS 17 beta 3 via network. I'm running Xcode 15 beta 6 Device shows in devices and simulators and I can debug when connected with cable. However the "Connect Via Network" option is frayed out, oddly however the checkbox is ticked I'm developing a app using RoomPlan so network connectivity is a must for debugging Anyone else encountered this and know how to get around this problem Other devices running iOS 16 connect via network just fine
6
3
5.2k
Mar ’25
Does Xcode 26 Still Support Pull Requests?
Does Xcode 26 still support creating pull requests and/or viewing comments from GitHub pull requests associated with the current branch? This used to be possible, but I cannot get it to work with the current version of Xcode (26.0.1). The "Create Pull Request" menu item takes me to github.com directly, instead of presenting a nice UI menu; hence I'm wondering.
1
3
94
Oct ’25
Xcode 16.3 repeatedly log causing CPU leak
Xcode 16.3 repeatedly logs a same message very frequently, as fast as a single thread can. I use Instruments and Console and find out the log is: Needs flush! by -[DNTBrotliDecoder decodeBytes:length:] in DNTDocumentationSupport. The call is on a single non-main thread. I've tried to clear caches and it seems doesn't change. Yet I don't know exact point when the logging starts since launch. Fortunately, this thread is dispatched at E cores, bringing approximately 2 watts of power load to my Mac. Environments: macOS 15.4 (24E248) Xcode 16.3 (16E140) M4 chip
7
3
292
May ’25
Existing Project Not Showing Installed iOS 26 Simulator (New Projects Work Fine)
Hello everyone, I'm encountering a frustrating issue with Xcode 26 and the iOS Simulator selection, and I'd appreciate any insight from the community. Problem Overview I have updated my Xcode to version 26.0. I have successfully installed the iOS 26 SDK and the iOS 26 Simulator runtime via Xcode's component settings. However, when I open an older, existing project, the device selection dropdown menu does not list the iOS 26 simulator. I can only select older versions, such as my locally installed iOS 18.6 simulator. Key Finding (Diagnosis) New Project Test: When I create a brand new Xcode project, the iOS 26 simulator is correctly available and runs as expected. Conclusion: This strongly suggests the issue lies with a specific configuration setting in the existing (old) project, rather than the Xcode installation itself. Troubleshooting Steps Taken I suspect a project-level configuration is somehow blocking the display of the new simulator. I've already checked: General -> Deployment Target: This is set to an older version, but theoretically shouldn't hide the simulator list. Build Settings -> Base SDK: This is set to the latest iOS SDK. Has anyone else experienced this behavior when upgrading projects to support iOS 26? What specific configuration files (e.g., .xcodeproj settings, Podfile configurations, or specific Build Settings) should I check to ensure my old project properly recognizes and displays the newly installed iOS 26 simulator? Any pointers or solutions would be greatly appreciated! Thank you.
1
3
186
Sep ’25
Cannot run apps that use the callAsyncJavaScript() method on older simulators
If I use the method callAsyncJavaScript() my app will compile, but it won't run on older simulators. Specifically, in a brand new Storyboard project, I added this to `viewDidLoad(): let webView = WKWebView() webView.callAsyncJavaScript("1", in: nil, in: .page) { result in print("\(result)") } This runs fine with Xcode 16.3 targeting the iOS 18.4 simulator. It doesn't work if I target the iOS 18.3.1 simulator or the iOS 17.5 simulator. It does work on an iPhone 15 Pro running iOS 18.4 and it works on an iPhone 12 Pro running iOS 17.7.1. It goes without saying that this used to work on Xcode 16.2 and earlier, since my real project has been using that API for 3 or 4 years now. The specific error is dyld[89984]: Symbol not found: _$sSo9WKWebViewC6WebKitE19callAsyncJavaScript_9arguments2inAF17completionHandlerySS_SDySSypGSo11WKFrameInfoCSgSo14WKContentWorldCys6ResultOyyps5Error_pGcSgtF Referenced from: <82CC68A8-9426-343E-82CD-5443F53A6919> /Users/dave/Library/Developer/CoreSimulator/Devices/69CE58A3-8162-4616-B110-5857E6E2889F/data/Containers/Bundle/Application/3F27AAA0-8E96-437D-A1F4-DECD2E1A95B5/CallAsyncJavascript.app/CallAsyncJavascript.debug.dylib Expected in: <E11EC0F5-2AD1-3402-AB03-31A85EA6EB3A> /Library/Developer/CoreSimulator/Volumes/iOS_21F79/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 17.5.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/WebKit.framework/WebKit
4
3
229
Apr ’25
Debug Memory Graph not work
Unknown error from LeakAgent. errorStatus: 2 Domain: XRMemoryGraphDebuggerErrorDomain Code: 5 User Info: { DVTErrorCreationDateKey = "2025-04-01 02:49:23 +0000"; DVTRadarComponentKey = 637311; } Event Metadata: com.apple.dt.memory_graph_capture : { "debugSession_coalescedState" = 1; "debugSession_currentStackFrame" = "mach_msg2_trap"; "debugSession_currentThread" = "Thread 1"; "debugSession_isSynthetic" = 0; "debugSession_state" = 1; "device_identifier" = "00008110-000154D00EEB801E"; "device_isCoreDevice" = 1; "device_model" = "iPhone14,2"; "device_osBuild" = "18.4 (22E240)"; "device_platform" = "com.apple.platform.iphoneos"; "device_thinningType" = "iPhone14,2"; "dvt_coredevice_version" = "443.19"; "dvt_coresimulator_version" = "1010.10"; "dvt_mobiledevice_version" = "1784.102.1"; "launchSession_schemeCommand" = Run; "launchSession_state" = 2; "launchSession_targetArch" = arm64; "memgraphDebugger_duration_ms" = 0; "memgraphDebugger_precedingCount" = 1; "memgraphDebugger_status" = 5; "param_debugger_attachToExtensions" = 0; "param_debugger_attachToXPC" = 1; "param_debugger_type" = 3; "param_destination_isProxy" = 0; "param_destination_platform" = "com.apple.platform.iphoneos"; "param_diag_113575882_enable" = 0; "param_diag_MainThreadChecker_stopOnIssue" = 0; "param_diag_MallocStackLogging_enableDuringAttach" = 0; "param_diag_MallocStackLogging_enableForXPC" = 1; "param_diag_allowLocationSimulation" = 1; "param_diag_checker_tpc_enable" = 1; "param_diag_gpu_frameCapture_enable" = 0; "param_diag_gpu_shaderValidation_enable" = 0; "param_diag_gpu_validation_enable" = 0; "param_diag_guardMalloc_enable" = 0; "param_diag_memoryGraphOnResourceException" = 0; "param_diag_mtc_enable" = 1; "param_diag_queueDebugging_enable" = 1; "param_diag_runtimeProfile_generate" = 0; "param_diag_sanitizer_asan_enable" = 0; "param_diag_sanitizer_tsan_enable" = 0; "param_diag_sanitizer_tsan_stopOnIssue" = 0; "param_diag_sanitizer_ubsan_enable" = 0; "param_diag_sanitizer_ubsan_stopOnIssue" = 0; "param_diag_showNonLocalizedStrings" = 0; "param_diag_viewDebugging_enabled" = 1; "param_diag_viewDebugging_insertDylibOnLaunch" = 1; "param_install_style" = 2; "param_launcher_UID" = 2; "param_launcher_allowDeviceSensorReplayData" = 0; "param_launcher_kind" = 0; "param_launcher_style" = 99; "param_launcher_substyle" = 0; "param_runnable_appExtensionHostRunMode" = 0; "param_runnable_productType" = "com.apple.product-type.application"; "param_structuredConsoleMode" = 1; "param_testing_launchedForTesting" = 0; "param_testing_suppressSimulatorApp" = 0; "param_testing_usingCLI" = 0; "sdk_canonicalName" = "iphoneos18.4"; "sdk_osVersion" = "18.4"; "sdk_variant" = iphoneos; } System Information macOS Version 15.3.2 (Build 24D81) Xcode 16.3 (23785) (Build 16E140) Timestamp: 2025-04-01T10:49:23+08:00
3
3
320
Apr ’25