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

Posts under Xcode tag

200 Posts

Post

Replies

Boosts

Views

Activity

JSON Tutorial
HiSuppose i made a macOS App and want to connect to Oracle or mySQL Database I heard best way is using JSON which i dontknow anything about it, where can I find good reading about it thats specifically related to macOS or iOS Apps ?--Kindest Regards
3
0
446
3w
Help, I'm New and Lot
Hello, I created a code in Xcode on my Mac. Once it was debugged I tried to run it on a simulator. Every time I run it on a simulator I get the white screen with the spinning red box. I'm very new at this and I am creating this app for my own child. As a teacher I couldn't stand the other math fact apps. You'll have to talk to me like an infant.
1
0
128
3w
Is this normal while developing an app on the watch?
I used to develop iPhone apps about a decade ago and am now back at it with an iPhone and companion Apple Watch app. Why does it suck so bad? I a must be doing something wrong, but what I am doing is out of the box. The majority of the time when I go to build on the watch I get: Previous preparation error: A connection to this device could not be established.; Timed out while attempting to establish tunnel using negotiated network parameters. Which I then first try to force quit the app on the watch and if that does not work, reboot the watch (which is pretty ridiculous). I tried Gemini and it gave me the following explanation: This is arguably the single most frustrating error in the entire watchOS development ecosystem. As an expert, I can tell you that you are not doing anything wrong; you are fighting a fragile architecture. Here is the technical breakdown of why this happens and a workflow to mitigate it without constant reboots. The Technical "Why" This error message reveals that the issue lies in the CoreDevice (and formerly usbmuxd) infrastructure, specifically in the secure transport layer. The "Tunnel" Failure: Xcode attempts to establish a secure, encrypted tunnel (DTXConnection) to the Apple Watch to push the debugger and the app binary. Unlike the iPhone, which can sustain a high-bandwidth connection easily, the Watch aggressively manages its radios (Bluetooth vs. WiFi vs. AWDL) to save battery. The "Handshake" Timeout: If the Watch is on Bluetooth (Low Energy) when Xcode initiates the tunnel, the bandwidth is insufficient. The system tries to escalate the connection to WiFi (or Apple Wireless Direct Link). If this negotiation takes even a few milliseconds too long—due to 2.4GHz interference, router mDNS configuration, or the Watch CPU being throttled—the handshake times out. The "Previous Preparation Error": This is the insidious part. Once the handshake fails once, Xcode’s device service caches that failure state for the device UUID. It marks the device as "unreachable" to prevent the IDE from hanging indefinitely on subsequent tries. Why you see it constantly: You aren't actually triggering a new connection attempt; you are hitting the cached "failed" state immediately. Unfortunately, the solutions it gives me are: The "Wired Proxy" Method (Most Reliable) This is the gold standard for watchOS debugging. Do not rely on "Connect via Network" for the Watch directly if you can avoid it. Disable WiFi on your Mac (temporarily) or ensure the Mac and iPhone are on the exact same SSID. Plug your iPhone into the Mac via USB. Ensure the Watch is paired to that iPhone. Result: Xcode will tunnel the instructions through the USB connection to the Phone, and the Phone acts as a high-bandwidth proxy to the Watch. This eliminates the "Mac-to-Watch" WiFi negotiation failure point. Do you hit this regularly? What do you do to make for a smooth development and deployment process? Or is it really this fragile? Thanks for any help! Bryan
6
1
477
3w
Apple wants me to change the Bundle ID (Non XCODE)
Hello! I have a web extension I've written to Google Chrome and Mozilla Firefox. It's made up of simple files. The extension (content.js) A manifest (manifest.json) file which explains the extension The icon (icon.png) Apple has developed App Store Connect / Xcode Cloud specifically for this. I upload those three files as a zip. I move it over to TestFlight for testing and then select Distribution to put it through Apple Review. This is my entire process. I have been doing this for 4+ months and Apple reviewed my application and put it up. I have then gone through 13 subsequent reviews (ALL POSITIVE) and have gone through version upgrades for months, no issue. On the 15th review, they want me to change the name of my application. I have done that in the content.js, the manifest.json, and anywhere that allows me to change it in App Store Connect. There is apparently one more place they want it changed. This is on the App Information / General Information tab, specifically the "BundleID". The tip on that field says: The bundle ID must match the one you used in Xcode. It can't be changed after you upload your first build. Or, I am not understanding what their issue is or what else I can change. I was told by Review team I must use XCODE to change this. I tell them I don't use XCode (they demand now I use Xcode, which seems completely irrelevant here and a red herring The tooltip itself says I can't change it anyway? Has anyone been told after they released their application they have to change their name later on in life?
3
0
304
4w
TestFlight version of Mac Multiplatform is on the wrong AppStore, but not the iOS TestFlight build
Hello, I'm sure I've probably missed a checkbox somewhere.. I have a mulitiplatform app, when building from Xcode, and not using the testing config, both iOS and macOS show the correct App Store currency.. When I distribute a build through TestFlight, my Mac version shows a different country/currency price (the US one). I can't find anywhere to change this. My Mac is signed into the same sandbox account as my iOS device. Can anyone help?
1
0
194
4w
Unable to Verify Code Signature with Error 0xe8008018 Despite Troubleshooting Attempts
Hello everyone, I am encountering a persistent issue with Xcode where I’m unable to install my app on a testing device due to the following error message: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.SznYNY/extracted/iForC.app : 0xe8008018 (The identity used to sign the executable is no longer valid.) Here’s what I have tried so far to resolve this issue: 1. Ensured that all my certificates and provisioning profiles are current and valid. 2. Removed all related certificates from my Keychain and reinstalled new ones. 3. Cleaned and rebuilt the project multiple times. 4. Unpaired the device and paired it again. 5. Reinstalled the latest version of Xcode. 6. Performed a complete restore of my Mac. Despite these troubleshooting steps, I am still facing the same issue. I would greatly appreciate any insights or experiences related to this error from anyone who has overcome similar challenges. Thank you in advance for your help!
13
3
7.8k
4w
Xcode Metal Trace
Code is download from apple official metal4 sample [https://developer.apple.com/documentation/metal/drawing-a-triangle-with-metal-4?language=objc] enable metal gpu trace in macOS schema and trace a frame in Xcode. Xcode may show segment fault on App from some 'GTTrace' function when click trace button. When replay a .gputrace file, Xcode may crash , throw an internal error or a XPC error. The example code using old metal-renderer can trace without any problem and everything works fine. Test Environment: Xcode Version 26.2 (17C52) macOS 26.2 (25C56) M1 Pro 16GB A2442
2
0
471
Jan ’26
Errors with PerfPowerTelemetryClientRegistrationService and PPSClientDonation when running iOS application in Xcode
I've suddenly started seeing hundreds of the same block of four error messages (see attached image) when running my app on my iOS device through Xcode. I've tried Cleaning the Build folder, but I keep seeing these messages in the console but can't find anything about them. Phone is running iOS 26.1. Xcode is at 16.4. Mac is on Sequoia 15.5. The app is primarily a MapKit SwiftUI based application. Messages below: Connection error: Error Domain=NSCocoaErrorDomain Code=4099 "The connection to service named com.apple.PerfPowerTelemetryClientRegistrationService was invalidated: Connection init failed at lookup with error 159 - Sandbox restriction." UserInfo={NSDebugDescription=The connection to service named com.apple.PerfPowerTelemetryClientRegistrationService was invalidated: Connection init failed at lookup with error 159 - Sandbox restriction.} (+[PPSClientDonation isRegisteredSubsystem:category:]) Permission denied: Maps / SpringfieldUsage (+[PPSClientDonation sendEventWithIdentifier:payload:]) Invalid inputs: payload={ isSPR = 0; } CAMetalLayer ignoring invalid setDrawableSize width=0.000000 height=0.000000 I'm also seeing the following error messages: CoreUI: CUIThemeStore: No theme registered with id=0
6
3
371
Jan ’26
QR code scan deeplink not work in XCode test run?
Hi, I'm trying to figure out what is true here - if I am not in the correct forum please direct me :-) A. It is not possible to test a QR code scan that contains a deeplink into my iOS app from an XCoode build test run. In other words, The build must be published to Test Flight for the iOS's QR code scan sub-system to be able to process the deeplink into my app? If I am wrong about this, it sure would help with testing to be able to test directly from the local XCode build test. If so, can someone point me in the direction of what I would need to do for that? Thanks for your input either way!
0
0
110
Jan ’26
Orphaned 9GB Simulator Runtime in /System/Library/AssetsV2 - Cannot Delete (SIP protected)
I have an orphaned asset folder taking up 9.13GB located at: /System/Library/AssetsV2/com_apple_MobileAsset_iOSSimulatorRuntime/c0d3fd05106683ba0b3680d4d1afec65f098d700.asset It contains SimulatorRuntimeAsset version 18.5 (Build 22F77). Active Version: My current Xcode setup is using version 26.2 (Build 23C54). I checked the plist files in the directory and found what seems to be the cause of the issue: The "Never Collected" Flag: The Info.plist inside the orphaned asset folder explicitly sets the garbage collection behavior to "NeverCollected": <key>__AssetDefaultGarbageCollectionBehavior</key> <string>NeverCollected</string> The Catalog Mismatch: The master catalog file (com_apple_MobileAsset_iOSSimulatorRuntime.xml) in the parent directory only lists the new version (26.2). Because the old version (18.5) is missing from this XML, Xcode and mobileassetd seem to have lost track of it entirely. What I Have Tried (All Failed) Xcode Components: The version 18.5 does not appear in Settings -> Components, so I cannot delete it via the GUI. Simctl: xcrun simctl list runtimes does not list this version. Running xcrun simctl runtime delete 22F77 fails with: "No runtime disk images or bundles found matching '22F77'." Manual Deletion: sudo rm -rf [path] fails with "Operation not permitted", presumably because /System/Library/AssetsV2 is SIP-protected. Third-party Tools: Apps like DevCleaner do not detect this runtime (likely because they only scan ~/Library or /Library, not /System/Library). Has anyone found a way to force the system (perhaps via mobileassetd or a specific xcrun flag) to re-evaluate this folder and respect a deletion request? I am trying to avoid booting into Recovery Mode just to delete a cache file. Any insights on how AssetsV2 handles these "orphaned" files would be appreciated.
5
3
523
Jan ’26
xcodebuild does not retry UI tests with xcode 26.2
I have ios UI tests that are build with command xcodebuild -workspace ... -scheme ... -configuration ... -derivedDataPath ... -destination ... -testPlan ... build-for-testing Then I run them with xcodebuild -destination ... -resultBundlePath ... -parallel-testing-worker-count ... -xctestrun ... test-without-building I also have following settings in testplan "maximumTestRepetitions" : 3, "testRepetitionMode" : "retryOnFailure", With xcode 16.4 tests were retried on failure up to 3 times, but migrating to xcode 26.2 seems to change this behavior and tests are no longer retried. Is it expected behaviour and I should manually add params like -test-iterations 3 -retry-tests-on-failure into xcodebuild test-without-building command? Here is xcresult - https://drive.google.com/file/d/1xHgiZnIK_lptDSUf-fCyEnT9zYubZlCf/view?usp=sharing And testrun file -https://drive.google.com/file/d/1aBi2sTjy8zFYtgYn1KA60T8gwD_OnBCF/view?usp=sharing
1
0
186
Jan ’26
Liquid glass segment view freezes when dragging handle to a disabled segment
Setup: I have a segment view with 3 segments, and the last on (at index 2) is disabled. Issue: When I drag the liquid glass handle of the segment view from what was previously selected to the disabled segment, the liquid glass handle freezes mid-air. Workaround: I can still interact with the handle and manually restore its position, or tap on any other segment to restore its position. Notes: I'm using UIKit, and no extra customizations are applied. class ViewController: UIViewController { @IBOutlet weak var segmentView: UISegmentedControl! override func viewDidLoad() { super.viewDidLoad() segmentView.removeAllSegments() let segments = ["Option 1", "Option 2", "Option 3"] for (index, title) in segments.enumerated() { segmentView.insertSegment(withTitle: title, at: index, animated: false) } // Select the first one by default segmentView.selectedSegmentIndex = 0 // Disable the last segment segmentView.setEnabled(false, forSegmentAt: 2) } }
0
0
101
Jan ’26
Cannot see appended AttributedString in NSTextView
When I appendAttributedString to [textView textStorage] it does not appear on the scrollable TextView. However when I NSLog the [textView textStorage] the Attributed string is outputted, and is therefore stored in the textView, see below. Occurs every time I ask to see the AttributedString I send to the textView. [textView textStorage] attributedString I need to see the attributedString displayed on the ScrollableTextView, but I don't know why I cannot see it.
2
0
442
Jan ’26
CarPlay on iOS 14 and iOS 15
My app developed with the new Xcode 26 doesn't appear on CarPlay when running on iOS 14–15 devices. My developer has obtained the com.apple.developer.carplay-driving-task permission, but iOS 16+ devices allow my app to display on CarPlay. Can anyone help resolve this issue? Is it because the carplay-driving-task permission is only available for iOS 16+ devices? If I want compatibility with iOS 14–15 devices, do I need to apply to Apple for the carplay-audio permission to use it? Has anyone encountered a similar issue? Thanks!
1
0
104
Jan ’26
XCode 26.2 (17C52) vs iOS 26.2 (23C55): Cannot mount any DDI onto my device
Hi... Is there not an available Developer Disk Image for this situation? I am unable to do my professional job because I have not been able to overcome this issue on my machine. I have various things to try to resolve this issue so that I can install, run, and test apps onto my iPhone (iPhone 13). The version of MacOSX is Sequoia 15.7.3. I've tried everything from hard resetting the pairing stack, to resetting the trust on my iPhone. I've even sought help from AI. AI says, in a nutshell I'm screwed. Apparently, I am unable to downgrade from iOS 26.2 to, say, iOS 18 or below. I'll be honest: this is frustrating, and this situation seems to happen like clockwork with every update in either direction. I hope someone somewhere has ideas. Thanks. Update: I'm not even reaching the step where the shared Cache symbols are being copied from my iPhone. The developer disk image could not be mounted on this device. Domain: com.apple.dt.CoreDeviceError Code: 12040 Failure Reason: Failed to find a DDI that can be used to enable DDI services on the device. Usually this means the best DDI we could find for a platform did not have compatible CoreDevice content. Run 'devicectl list preferredDDI' from the command line to get more details on why no valid DDI can be found. User Info: { DVTErrorCreationDateKey = "2026-01-14 18:56:43 +0000"; DeviceIdentifier = "C471EDF8-4385-5669-BA17-976B325B2EC4"; "com.apple.dt.DVTCoreDevice.operationName" = enablePersonalizedDDI; } -- Failed to find a DDI that can be used to enable DDI services on the device. Usually this means the best DDI we could find for a platform did not have compatible CoreDevice content. Run 'devicectl list preferredDDI' from the command line to get more details on why no valid DDI can be found. Domain: com.apple.dt.CoreDeviceError Code: 12001 -- System Information macOS Version 15.7.3 (Build 24G419) Xcode 26.2 (24553) (Build 17C52) Timestamp: 2026-01-14T10:56:43-08:00 COMMAND LINE Developer % devicectl list preferredDDI Host CoreDevice version: 506.6 WARNING: No usable DDI found for the iOS platform (The DDI's CoreDevice content is too old.). Best (unusable) DDI found is: • hostDDI: file:///Library/Developer/DeveloperDiskImages/iOS_DDI/ ▿ ddiMetadata: • buildUpdate: 17C5038g • contentIsCompatible: false • coreDeviceVersionChecksIncludeDevelopmentRevision: true • developmentRevision: 0 • enforcingCoreDeviceVersionChecks: true • platform: iOS ▿ projectMetadata: • Citrine-1500.1 • CoreDevice-506.5 • DTDeveloperDiskImageSupport-14.0.0 • DTOCMock-23002 • GPUToolsDevice_DDI-312.4 • JetsamProperties-2648.0.21 • LiveExecutionResultsLogger-20100 • Mercury-67 • Playgrounds-11 • XCTest-24507 • incompatibleContentReason: The DDI's CoreDevice content is too old. • isUsable: false • variant: external WARNING: No DDI was found for the macOS platform. No usable DDI found for the tvOS platform (The DDI's CoreDevice content is too old.). Best (unusable) DDI found is: • hostDDI: file:///Library/Developer/DeveloperDiskImages/tvOS_DDI/ ▿ ddiMetadata: • buildUpdate: 17C5038g • contentIsCompatible: false • coreDeviceVersionChecksIncludeDevelopmentRevision: true • developmentRevision: 0 • enforcingCoreDeviceVersionChecks: true • platform: tvOS ▿ projectMetadata: • Citrine-1500.1 • CoreDevice-506.5 • DTDeveloperDiskImageSupport-14.0.0 • DTOCMock-23002 • GPUToolsDevice_DDI-312.4 • JetsamProperties-2648.0.21 • LiveExecutionResultsLogger-20100 • Mercury-67 • Playgrounds-11 • XCTest-24507 • incompatibleContentReason: The DDI's CoreDevice content is too old. • isUsable: false • variant: external WARNING: No usable DDI found for the watchOS platform (The DDI's CoreDevice content is too old.). Best (unusable) DDI found is: • hostDDI: file:///Library/Developer/DeveloperDiskImages/watchOS_DDI/ ▿ ddiMetadata: • buildUpdate: 17C5038g • contentIsCompatible: false • coreDeviceVersionChecksIncludeDevelopmentRevision: true • developmentRevision: 0 • enforcingCoreDeviceVersionChecks: true • platform: watchOS ▿ projectMetadata: • Citrine-1500.1 • CoreDevice-506.5 • DTDeveloperDiskImageSupport-14.0.0 • DTOCMock-23002 • GPUToolsDevice_DDI-312.4 • JetsamProperties-2648.0.21 • LiveExecutionResultsLogger-20100 • Mercury-67 • Playgrounds-11 • XCTest-24507 • incompatibleContentReason: The DDI's CoreDevice content is too old. • isUsable: false • variant: external WARNING: No usable DDI found for the visionOS platform (The DDI's CoreDevice content is too old.). Best (unusable) DDI found is: • hostDDI: file:///Library/Developer/DeveloperDiskImages/xrOS_DDI/ ▿ ddiMetadata: • buildUpdate: 17C5038g • contentIsCompatible: false • coreDeviceVersionChecksIncludeDevelopmentRevision: true • developmentRevision: 0 • enforcingCoreDeviceVersionChecks: true • platform: xrOS ▿ projectMetadata: • Citrine-1500.1 • CoreDevice-506.5 • DTDeveloperDiskImageSupport-14.0.0 • DTOCMock-23002 • GPUToolsDevice_DDI-312.4 • JetsamProperties-2648.0.21 • LiveExecutionResultsLogger-20100 • Mercury-67 • Playgrounds-11 • XCTest-24507 • incompatibleContentReason: The DDI's CoreDevice content is too old. • isUsable: false • variant: external
3
0
432
Jan ’26
UISegmentedControl tap position misalignment in Xcode 26 with UIDesignRequiresCompatibility enabled
Environment macOS 15.7.3 Xcode 26.1.1 / 26.2 iOS 18.5 / 26.2 iPhone 16 Pro Simulator and physical device Problem Description When tapping an unselected UISegmentedControl, the selected segment does not match the tapped position. Specifically, tapping the rightmost segment (index: 3) results in the leftmost segment (index: 0) being selected instead. Conditions for Reproduction This issue occurs when all of the following conditions are met: Built with Xcode 26.x UIDesignRequiresCompatibility is set to YES in Info.plist UISegmentedControl is positioned using Auto Layout with leading alignment Segments are added dynamically using insertSegment(withTitle:at:animated:) Note: The issue does not occur when segments are defined statically in Storyboard. Steps to Reproduce Create a subclass of UISegmentedControl that dynamically sets segments: class CustomSegmentedControl: UISegmentedControl { func setSegments(titles: [String]) { removeAllSegments() titles.forEach { title in insertSegment(withTitle: title, at: numberOfSegments, animated: false) } } } In the ViewController, configure the control: override func viewDidLoad() { super.viewDidLoad() segmentedControl.setSegments(titles: ["Item A", "Item B", "Item C", "Item D"]) segmentedControl.selectedSegmentIndex = UISegmentedControl.noSegment } Set UIDesignRequiresCompatibility to YES in Info.plist: <key>UIDesignRequiresCompatibility</key> <true/> Run the app and tap the rightmost segment ("Item D") Expected vs Actual Behavior Expected Actual Tap rightmost segment "Item D" (index: 3) is selected "Item A" (index: 0) is selected What I Tried (Did Not Work) Calling layoutIfNeeded() after adding segments: segmentedControl.setSegments(titles: ["Item A", "Item B", "Item C", "Item D"]) segmentedControl.layoutIfNeeded() // No effect Workarounds Set UIDesignRequiresCompatibility to NO (enables Liquid Glass design) Define segments statically in Storyboard instead of dynamically Sample Project Minimal reproduction project is available here: https://github.com/CH3COOH/Samples/tree/master/SampleSelectSegmentedControl Feedback Assistant This issue has been reported via Feedback Assistant: FB21712773 Has anyone else encountered this issue or found alternative workarounds?
0
0
142
Jan ’26
"Bad URL" when signing in to XCode
The other day the XCode account had some error that I so that I decided to log out and in again. But when trying to log in to my apple account I get this "Bad URL" with the description "Try signing in again or contact Apple Developer Support to resolve account access". This only happens on the XCode on my work computer. I can log in to XCode on other computers with the same account. This happens only on this computer and with any account that I try to log in to. Obviously there is some cache file somewhere that I need to delete. But I am not finding it.
1
1
189
Jan ’26
Is it safe to run Xcode from an external drive?
I’m currently facing a disk space limitation on my Mac. I’ve already freed up some storage by following the suggestions shared in a previous post, which helped partially, but the issue is not fully resolved and space is still a bottleneck for my workflow. To move forward, I’d like to ask a very concrete question: Is it safe and supported to move Xcode to an external hard drive (SSD), use it from there, and simply connect the drive whenever I need to work with Xcode? Specifically: Are there known issues with performance, stability, or updates? Are there components that must remain on the internal disk to avoid unexpected behavior? Is this a reasonable long-term setup, or just a temporary workaround? I want to make sure I’m not setting myself up for hidden problems down the road. Thanks in advance for any clarification or best practices you can share.
3
0
246
Jan ’26