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

Xcode Documentation

Posts under Xcode subtopic

Post

Replies

Boosts

Views

Activity

Failed to verify code signature when trying to install on iPad from XCode
Hi, run into this error today: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.QJh2l0/extracted/MyAwesome.app : 0xe8008015 (A valid provisioning profile for this executable was not found.) Project is an AUv3 app + extension. It builds and install fine on MacOS. It builds on iPad but can't install : that's when the error appears. Regarding provisioning files, I use Automatic manage signing and I can see that the Xcode Managed Profile looks fine an includes my iPad. The only thing I see that differ from other projects is that as an AUv3 project, I have both and App (host) and extension projects. Thus the bundle identifier for this extension project is not the same as it seems I have to use different identifiers. So app bundle id is x.y while extension is x.y.z (same x.y base)) Last but not least the project and IPA can be built fine on XCode Cloud. (Although I can't download the artifacts but it seems it's the same problem for many of us today...) macOS Version 15.4 (Build 24E248) Xcode 16.2 (23507) (Build 16C5032a) Thanks in advance for your help :)
7
0
510
Oct ’25
Tabbar UITest bug on tvOS
When running UITests on tvOS, tabBar viewIdentifiers (UIKit) are no longer appearing. When you run the test, accessibility identifiers for tabs are no longer locatable but all other identifiers appears except for the tabs in the tabBar. In the stack trace of the debugger, if I print application, I can see all existing viewIdentifiers except those that were set for the tabs (on tvOS only). If I force an action on the simulator after the app has launched and the view appeared ie move left or right, the identifiers appears (confirmed by stack trace) and the test will continue as expected. This was not an issue in the past (no code changes). I am not sure if this appeared after updating my mac to Sequoia. But for iOS, there is no issue. This bug only appears on tvOS and specifically the tabs. Issue persists on: Sequoia 15.4.1 Xcode 16.3
1
0
185
May ’25
Xcode cloud time out issue
We are getting following error in xcode cloud "The step invocation hit a user timeout. The xcodebuild archive invocation timed out. No activity has been detected on stdout, stderr or the result bundle in 30 minutes" We are using following env to create a build. Xcode: 14.2 Macos: Ventura 13.2.1 We didn't face any issue in Ventura 13.2.0 and we are seeing this issue in our first build using ventura 13.2.1. The difference I see between successful and failure build, I don't see "Discovering Swift tasks after 'Compiling { list of swift file " in a failed build. I see compiling { list of swift file } and end of the compilation, the build is failing.
1
3
1.3k
Nov ’25
EXC_BAD_ACCESS if Address or Thread Sanitizer is enabled
I'm getting EXC_BAD_ACCESS (code=2, address=0x7ff8a6e2fcce) when launching my app on the simulator with Address or Thread Sanitizer enabled. I'm running Xcode 16.3 (16E140) on macOS Sequoia 15.4.1 (24E263). The call stack looks like the following. On the device, there is no crash, but this message is printed to the console: malloc: nano zone abandoned due to inability to reserve vm space. (Not sure if it's related.) Does anybody know what is causing the crash? Thread 1 #0 0x0000000103361f5b in __sanitizer::MemoryMappingLayout::Next () #1 0x000000010336034b in __sanitizer::MemoryRangeIsAvailable () #2 0x000000010334db77 in __asan::InitializeShadowMemory () #3 0x0000000103395069 in __asan::AsanInitInternal() (.cold.1) () #4 0x000000010334d352 in __asan::AsanInitInternal () #5 0x0000000103394f65 in __asan_init.cold.1 () #6 0x000000010334d325 in __asan::AsanInitFromRtl () #7 0x0000000103343289 in wrap_malloc_default_zone () #8 0x00007ff801b15f86 in __malloc_init () #9 0x00007ffa160080be in libSystem_initializer () #10 0x000000010306eb11 in invocation function for block in dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const () #11 0x000000010308f364 in invocation function for block in dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const () #12 0x00000001030aad7c in invocation function for block in mach_o::Header::forEachSection(void (mach_o::Header::SectionInfo const&, bool&) block_pointer) const () #13 0x00000001030a83c9 in mach_o::Header::forEachLoadCommand () #14 0x00000001030a98c8 in mach_o::Header::forEachSection () #15 0x000000010308ef62 in dyld3::MachOAnalyzer::forEachInitializer () #16 0x000000010306e9ac in dyld4::Loader::findAndRunAllInitializers () #17 0x0000000103074da1 in dyld4::JustInTimeLoader::runInitializers () #18 0x00000001030807c5 in dyld4::APIs::runAllInitializersForMain () #19 0x000000010305efac in dyld4::prepare () #20 0x000000010305e36e in _dyld_sim_prepare () #21 0x000000010993b2a0 in dyld4::prepareSim () #22 0x0000000109939963 in dyld4::prepare () #23 0x000000010993981f in dyld4::start(dyld4::KernelArgs*, void*, void*)::$_0::operator()() const () #24 0x00000001099394da in start ()
8
1
500
Jun ’25
AppIntents don't show up in Shortcuts app when in SPM package
Hi there, I successfully created an AppIntent for our app, and when I had it in the same target as our main app it showed up fine in the shortcuts app. Then I realized that many of the new System Control widgets introduced in iOS 18 (e.g. lockscreen, control center) live in the widget extension target, but they also need to reference that same AppIntent. So to fix this, I thought I'd migrate out the code into it's own SPM package that both the WidgetExtension and the Main App processes can reference. However, after doing that and rebuilding, the intent no longer shows up in the Shortcuts app. Furthermore, my AppShortcutsProvider class now has this error when trying to define the list of appShortcuts: App Intent <name> should be in the same target as AppShortcutsProvider Is this intended, and if so, how do we reference the same AppIntent across multiple targets?
16
2
4.6k
Oct ’25
run XCUITest with an SKStoreReviewController
I'm building out a number of XCUITests. At one stage in my app, we present an SKStoreReviewController to ask the user if they'd like to review the app now. All I'd like to do is dismiss the view, by hitting the "Not Now" button. Normally, for other "system" views, I'd something like this: let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard") let notNowButton = springboard.buttons["Not Now"] And then I'd do an appropriate 'wait' and tap action. But for some reason, this isn't working. Looking for advice on how to properly handle this screen.
2
0
156
Jun ’25
Posting a Crash Report
If you need help investigating a crash, please include a crash report in your post. To smooth things along, follow these guidelines: For information on how to get a crash report, see Acquiring crash reports and diagnostic logs. Include the whole crash report as a text attachment (click the paperclip icon and then choose Add File). This avoids clogging up the timeline while also preserving the wealth of information in the crash report. If you’re not able to post your crash report as an attachment, see Can’t Post Crash Report as Attachment below. If you want to highlight a section of the report, include it in the main body of your post. Put the snippet in a code block so that it renders nicely. To create a code block, add a delimiter line containing triple backquotes before and after the block, or just click the Code Block button. If possible, post an Apple crash report. Third-party crash reporters are often missing critical information and have general reliability problems (for an explanation as to why, see Implementing Your Own Crash Reporter). Symbolicate your crash report before posting it. For information on how to do this, see Adding identifiable symbol names to a crash report. If you need to redact the crash report, do so consistently. Imagine you’re building the WaffleVarnish app whose bundle ID is com.example.wafflevarnish but you want to keep your new waffle varnishing technology secret. Replace WaffleVarnish with WwwwwwVvvvvvv and com.example.wafflevarnish with com.eeeeeee.wwwwwwvvvvvvv. This keeps the text in the crash report aligned while making it possible to distinguish the human-readible name of the app (WaffleVarnish) from the bundle ID (com.example.wafflevarnish). Finally, for information on how to use a crash report to debug your own problems, see Diagnosing issues using crash reports and device logs. Can’t Post Crash Report as Attachment Crash reports have two common extensions: .crash and .ips. If you have an .ips file, please post that [1]. DevForums lets you attach a .crash file but not an .ips file (r. 117468172). To work around this, change the extension to .txt. If DevForums complains that your crash report “contains sensitive language”, leave it out of your initial post and attach it to a reply. That often avoids this roadblock. If you still can’t post your crash report, upload it to a file sharing service and include the URL in your post. Post the URL in the clear, per tip 14 in Quinn’s Top Ten DevForums Tips. Getting a Crash Report from the Xcode Organiser The Xcode organiser shows crash reports from customers. If you’re investigating such a crash and want to post a crash report: Navigate to the crash in the Xcode organiser. Note If you can’t see the right crash, check the filter popups at the top. In the list of crashes, secondary click on your crash and choose Show in Finder. That reveals the Xcode crashpoint document (.xccrashpoint) in the Finder. Secondary click on that and choose Show Package Contents. In the resulting Finder window, find a crash report (.crash) that accurately represents the crash you’re investigating and attach that to your forums post. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com" [1] Because it’s easy to go from an .ips file to a .crash file. I usually do this by choosing File > Quick Look in the Finder. For more info about these file formats, see this post. Revision History: 2025-08-29 Added the Getting a Crash Report from the Xcode Organiser section. 2024-11-21 Added a recommendation to post the .ips format if possible. 2024-05-21 Added some advice regarding the “contains sensitive language” message. 2023-10-25 Added the Can’t Post Crash Report as Attachment section. Made other minor editorial changes. 2021-08-26 First posted.
0
0
9.7k
Aug ’25
Background process not working in TestFlight
Hi everyone, I recently built an iOS application that fetches the healthkit data with the BGProcessingTask. It is working as expected in the debug with the physical device connected but its not working in Testflight. I printed out the logs but they don't show that the background process's running. Here is my code snippet. func registerBackgroundTask() { BGTaskScheduler.shared.register(forTaskWithIdentifier: taskIdentifier, using: nil) { task in LogManager.shared.addBackgroundProcessLog("registering the background task...") print("registering the background task...") self.handleBackgroundTask(task: task as! BGProcessingTask) } } func scheduleBackgroundHealthKitSync() { print("scheduling background task...") LogManager.shared.addBackgroundProcessLog("scheduling background task...") let request = BGProcessingTaskRequest(identifier: taskIdentifier) request.earliestBeginDate = Date(timeIntervalSinceNow: 60 * 1) request.requiresNetworkConnectivity = true request.requiresExternalPower = false do { try BGTaskScheduler.shared.submit(request) print("BGProcessingTask scheduled") LogManager.shared.addBackgroundProcessLog("BGProcessingTask scheduled") } catch { print("Failed to schedule task: \(error)") LogManager.shared.addBackgroundProcessLog("Failed to schedule task: \(error)", isError: true) print(LogManager.shared.backgroundProcessLogs) } } func handleBackgroundTask(task: BGProcessingTask) { LogManager.shared.addBackgroundProcessLog("handleBackgroundTask triggered") print("handleBackgroundTask triggered") let dispatchGroup = DispatchGroup() dispatchGroup.enter() // Reschedule the background sync for the next time scheduleBackgroundHealthKitSync() var taskCancelled = false // Handling expiration task.expirationHandler = { taskCancelled = true LogManager.shared.addBackgroundProcessLog("Background task expired", isError: true) print("Background task expired") dispatchGroup.leave() } let healthKitManager = HealthKitManager.shared // Start the background sync operation healthKitManager.fetchAndSendAllTypes() { success in if success { LogManager.shared.addBackgroundProcessLog("HealthKit sync completed successfully") print("HealthKit sync completed successfully") } else { LogManager.shared.addBackgroundProcessLog("HealthKit sync failed", isError: true) print("HealthKit sync failed") } dispatchGroup.leave() } // Notify when all tasks are completed dispatchGroup.notify(queue: .main) { // Check if the task was cancelled using your own flag or state if taskCancelled { task.setTaskCompleted(success: false) // Fail the task if it was cancelled } else { task.setTaskCompleted(success: true) // Complete successfully if not cancelled } LogManager.shared.addBackgroundProcessLog("Background task ended with status: \(taskCancelled == false)") print("Background task completed with success: \(taskCancelled == false)") // Logs success or failure } } Here are the logs from my device. scheduling background task... BGProcessingTask scheduled
1
0
167
May ’25
Changing watchOS Deployment Target - What happens to users on old versions
This is probably a silly question, but I couldn't find the answer to it in the forums or in the documentation, though I may be missing something. I currently have an app with a deployment target of iOS 16 and a watchOS app (not independent) with a deployment target of watchOS 7. I understand what happens when I change the deployment target on the iOS app (e.g., users with iOS/iPadOS versions less than 16 will just never see the updates in the App Store). But what happens if I change the deployment target of the watchOS dependent app to something like watchOS 8? Will users who have iOS 16 and watchOS 7 (iOS meets deployment target/watchOS does not) get the app update, and it'll just uninstall the watchOS app automatically? Will they just not see the update? Does the old version of the Watch app somehow stay on their watch while the iOS app gets updated?
4
0
2.6k
Nov ’25
Upload Symbols Failed when Archiving with Xcode 16
Hello everyone, We are seeing some warnings in Xcode 16 when I archive my iOS app for distribution. During the upload phase (either via Xcode Organizer ), I get an error like: WARNING: Upload Symbols Failed The archive did not include a dSYM for MyFramework.framework with the UUIDs: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX Ensure that the archive’s dSYM folder includes a DWARF file for MyFramework.framework with the expected UUIDs. Question: How can these warnings be fixed? Is this warning safe to ignore if I know the vendor does not supply a dSYM for their framework? If I do need a proper dSYM for full symbolication, how should I request it from the vendor or generate it myself from an XCFramework?
0
3
490
May ’25
SPM Package resources bundle id format has changed in Xcode 16
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
3
1
1.1k
Jun ’25
How can one suppress SF Symbol deprecation warnings?
Xcode 16 insists on showing deprecations of this type: Some.xib SF Symbol 'doc.on.doc' is deprecated, use 'document.on.document' instead. The problem is that the XIBs in question are set with a Deployment Target of macOS 12, where "document.on.document" actually isn't available and produces a missing image. So the warnings are wrong, as they ignore the deployment target set on the XIB. I filed a bug against this long ago and it was ignored. Having given up... does anyone know how to disable this particular warning?
0
2
277
May ’25
KeyChain Sharing with App Extensions
Hi, We are trying to use Apple Security API for KeyChain Services. The motive is to store some sensitive data in the KeyChain. Our app has Network extensions enabled which share a common app group and we want to access the data stored in the KeyChain from the extensions as well. Specifically we were exploring the SecItemAdd, SecItemCopyMatching etc family of APIs. We tried a few methods: Using the common App Group : Specifying the common app group in the "kSecAttrAccessGroup" field of the KeyChain query, allowed us to have a shared keychains for different apps (targets) in the app group, but this did not work for extensionsEnabling the KeyChain Sharing capability : We enabled the KeyChain Sharing Ability in the extensions and the app target as well, giving a common KeyChain Access group. Specifying this in the kSecAttrAccessGroup field also did not work.We tried specifying "$AppIdentifier.KeyChainSharingGroup" in the kSecAttrAccessGroup field , but this did not work as wellThe error code which we get in all these 3 cases when trying to access the Keychain from the extension is error code 25291 (errSecNotAvailable). The Documentation says this error comes when "No Trust Results are available" and printing the error in xcode using the status says "No keychain is available. You may need to restart your computer". The online Documentation says that it is possible to share keychain with extensions, but by far we are unable to do it with the methods suggested.Do we need any special entitlement for this or is there something we are missing while using these APIs?If this is possible Is there any internal/open source wrapper for Keychain APIs, that we can use?We will really appreciate help in solving this issue!Thanks!
2
1
1.5k
Dec ’25
Why can't Xcode projects be opened in multiple workspaces
So Xcode has projects. And I breakup my code/libraries/targets into those. So why after 20 years of Xcode, can a workspace, that holds projects not display the same project opened in another workspace? The workspace redirects all output the project would normally generate in DerivedData to a completely different folder by default. What this means is I have to shut one workspace, and then open the other workspace with a different set of projects to see the ones that are shared. The workspace can't build because it can't open the project shared with another one that is open. VS sln files don't have this issue, so why do workspace files.
1
0
113
Jun ’25
Unable to Launch Tests/UITests in Xcode 16 with iOS 18 Simulator
Hello, I'm unable to run any test cases in Xcode 16 with the iOS 18 simulator. Steps to Reproduce: Create a new iOS project in Xcode 16 using the default iOS app template with the testing option checked. Run any test or UI test case by clicking the "Play" icon in the Test navigator. Xcode gets stuck at the "Testing" state indefinitely. Environment: macOS 15 beta 8 Xcode 16 beta 6 iOS 18 beta 7 simulator
11
6
3.6k
Sep ’25
App Stuck on Launch Screen When Debugging on iOS 18.5 Device with Xcode 16.3
I am using a Mac computer running macOS 15.5 with Xcode version 16.3 (16E140) and an iPhone XS Max on iOS 18.5. When debugging my app on the real device using Xcode, the app gets stuck on the launch screen and fails to proceed to the main interface. There is no output in the Xcode console, and the top of the window continuously shows "attaching to [app name] on [iPhone name]". Here are the details: The same issue occurred when the phone was running iOS 18.4.1. When I tested on another real device running iOS 17, the app launched and ran normally. I’ve tried clearing the cache, but it didn’t help. I deleted the ~/Library/Developer/Xcode/iOS DeviceSupport folder, let it re-download the necessary files, and ran the app again, but the issue persists. I’m currently out of ideas and would appreciate any assistance.
1
0
222
May ’25
PHAssetChangeRequest deleteAssets not working some time
Hello Team, I try to delete photo from Photos for that i used this method, [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ [PHAssetChangeRequest deleteAssets:@[assetToDelete]]; completionHandler:^(BOOL success, NSError *error) { }]; This method pops up a dialog with Don't Allow or Delete. But some time in some iPhones not respond PHAssetChangeRequest deleteAssets method that's why that completionHandler not called because of that i can't perform any operation of PHPhotoLibrary then after. If I restart my iPhone then it works. Many users of my app complained about this issue. I have an iPhone 11 with iOS 15.3. But some iOS 12,14,16 users also face the same issue. So what exact issue is there? Is it related to iOS or a method? Thanks, Ankur
4
3
1.1k
Nov ’25
Failed to verify code signature when trying to install on iPad from XCode
Hi, run into this error today: Failed to verify code signature of /var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.QJh2l0/extracted/MyAwesome.app : 0xe8008015 (A valid provisioning profile for this executable was not found.) Project is an AUv3 app + extension. It builds and install fine on MacOS. It builds on iPad but can't install : that's when the error appears. Regarding provisioning files, I use Automatic manage signing and I can see that the Xcode Managed Profile looks fine an includes my iPad. The only thing I see that differ from other projects is that as an AUv3 project, I have both and App (host) and extension projects. Thus the bundle identifier for this extension project is not the same as it seems I have to use different identifiers. So app bundle id is x.y while extension is x.y.z (same x.y base)) Last but not least the project and IPA can be built fine on XCode Cloud. (Although I can't download the artifacts but it seems it's the same problem for many of us today...) macOS Version 15.4 (Build 24E248) Xcode 16.2 (23507) (Build 16C5032a) Thanks in advance for your help :)
Replies
7
Boosts
0
Views
510
Activity
Oct ’25
Cannot select individual view in selectable mode
Cannot select individual view in selectable mode in Xcode preview, it only show the whole blue device border.
Replies
4
Boosts
2
Views
1k
Activity
Jul ’25
Tabbar UITest bug on tvOS
When running UITests on tvOS, tabBar viewIdentifiers (UIKit) are no longer appearing. When you run the test, accessibility identifiers for tabs are no longer locatable but all other identifiers appears except for the tabs in the tabBar. In the stack trace of the debugger, if I print application, I can see all existing viewIdentifiers except those that were set for the tabs (on tvOS only). If I force an action on the simulator after the app has launched and the view appeared ie move left or right, the identifiers appears (confirmed by stack trace) and the test will continue as expected. This was not an issue in the past (no code changes). I am not sure if this appeared after updating my mac to Sequoia. But for iOS, there is no issue. This bug only appears on tvOS and specifically the tabs. Issue persists on: Sequoia 15.4.1 Xcode 16.3
Replies
1
Boosts
0
Views
185
Activity
May ’25
Xcode cloud time out issue
We are getting following error in xcode cloud "The step invocation hit a user timeout. The xcodebuild archive invocation timed out. No activity has been detected on stdout, stderr or the result bundle in 30 minutes" We are using following env to create a build. Xcode: 14.2 Macos: Ventura 13.2.1 We didn't face any issue in Ventura 13.2.0 and we are seeing this issue in our first build using ventura 13.2.1. The difference I see between successful and failure build, I don't see "Discovering Swift tasks after 'Compiling { list of swift file " in a failed build. I see compiling { list of swift file } and end of the compilation, the build is failing.
Replies
1
Boosts
3
Views
1.3k
Activity
Nov ’25
EXC_BAD_ACCESS if Address or Thread Sanitizer is enabled
I'm getting EXC_BAD_ACCESS (code=2, address=0x7ff8a6e2fcce) when launching my app on the simulator with Address or Thread Sanitizer enabled. I'm running Xcode 16.3 (16E140) on macOS Sequoia 15.4.1 (24E263). The call stack looks like the following. On the device, there is no crash, but this message is printed to the console: malloc: nano zone abandoned due to inability to reserve vm space. (Not sure if it's related.) Does anybody know what is causing the crash? Thread 1 #0 0x0000000103361f5b in __sanitizer::MemoryMappingLayout::Next () #1 0x000000010336034b in __sanitizer::MemoryRangeIsAvailable () #2 0x000000010334db77 in __asan::InitializeShadowMemory () #3 0x0000000103395069 in __asan::AsanInitInternal() (.cold.1) () #4 0x000000010334d352 in __asan::AsanInitInternal () #5 0x0000000103394f65 in __asan_init.cold.1 () #6 0x000000010334d325 in __asan::AsanInitFromRtl () #7 0x0000000103343289 in wrap_malloc_default_zone () #8 0x00007ff801b15f86 in __malloc_init () #9 0x00007ffa160080be in libSystem_initializer () #10 0x000000010306eb11 in invocation function for block in dyld4::Loader::findAndRunAllInitializers(dyld4::RuntimeState&) const () #11 0x000000010308f364 in invocation function for block in dyld3::MachOAnalyzer::forEachInitializer(Diagnostics&, dyld3::MachOAnalyzer::VMAddrConverter const&, void (unsigned int) block_pointer, void const*) const () #12 0x00000001030aad7c in invocation function for block in mach_o::Header::forEachSection(void (mach_o::Header::SectionInfo const&, bool&) block_pointer) const () #13 0x00000001030a83c9 in mach_o::Header::forEachLoadCommand () #14 0x00000001030a98c8 in mach_o::Header::forEachSection () #15 0x000000010308ef62 in dyld3::MachOAnalyzer::forEachInitializer () #16 0x000000010306e9ac in dyld4::Loader::findAndRunAllInitializers () #17 0x0000000103074da1 in dyld4::JustInTimeLoader::runInitializers () #18 0x00000001030807c5 in dyld4::APIs::runAllInitializersForMain () #19 0x000000010305efac in dyld4::prepare () #20 0x000000010305e36e in _dyld_sim_prepare () #21 0x000000010993b2a0 in dyld4::prepareSim () #22 0x0000000109939963 in dyld4::prepare () #23 0x000000010993981f in dyld4::start(dyld4::KernelArgs*, void*, void*)::$_0::operator()() const () #24 0x00000001099394da in start ()
Replies
8
Boosts
1
Views
500
Activity
Jun ’25
AppIntents don't show up in Shortcuts app when in SPM package
Hi there, I successfully created an AppIntent for our app, and when I had it in the same target as our main app it showed up fine in the shortcuts app. Then I realized that many of the new System Control widgets introduced in iOS 18 (e.g. lockscreen, control center) live in the widget extension target, but they also need to reference that same AppIntent. So to fix this, I thought I'd migrate out the code into it's own SPM package that both the WidgetExtension and the Main App processes can reference. However, after doing that and rebuilding, the intent no longer shows up in the Shortcuts app. Furthermore, my AppShortcutsProvider class now has this error when trying to define the list of appShortcuts: App Intent <name> should be in the same target as AppShortcutsProvider Is this intended, and if so, how do we reference the same AppIntent across multiple targets?
Replies
16
Boosts
2
Views
4.6k
Activity
Oct ’25
run XCUITest with an SKStoreReviewController
I'm building out a number of XCUITests. At one stage in my app, we present an SKStoreReviewController to ask the user if they'd like to review the app now. All I'd like to do is dismiss the view, by hitting the "Not Now" button. Normally, for other "system" views, I'd something like this: let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard") let notNowButton = springboard.buttons["Not Now"] And then I'd do an appropriate 'wait' and tap action. But for some reason, this isn't working. Looking for advice on how to properly handle this screen.
Replies
2
Boosts
0
Views
156
Activity
Jun ’25
Posting a Crash Report
If you need help investigating a crash, please include a crash report in your post. To smooth things along, follow these guidelines: For information on how to get a crash report, see Acquiring crash reports and diagnostic logs. Include the whole crash report as a text attachment (click the paperclip icon and then choose Add File). This avoids clogging up the timeline while also preserving the wealth of information in the crash report. If you’re not able to post your crash report as an attachment, see Can’t Post Crash Report as Attachment below. If you want to highlight a section of the report, include it in the main body of your post. Put the snippet in a code block so that it renders nicely. To create a code block, add a delimiter line containing triple backquotes before and after the block, or just click the Code Block button. If possible, post an Apple crash report. Third-party crash reporters are often missing critical information and have general reliability problems (for an explanation as to why, see Implementing Your Own Crash Reporter). Symbolicate your crash report before posting it. For information on how to do this, see Adding identifiable symbol names to a crash report. If you need to redact the crash report, do so consistently. Imagine you’re building the WaffleVarnish app whose bundle ID is com.example.wafflevarnish but you want to keep your new waffle varnishing technology secret. Replace WaffleVarnish with WwwwwwVvvvvvv and com.example.wafflevarnish with com.eeeeeee.wwwwwwvvvvvvv. This keeps the text in the crash report aligned while making it possible to distinguish the human-readible name of the app (WaffleVarnish) from the bundle ID (com.example.wafflevarnish). Finally, for information on how to use a crash report to debug your own problems, see Diagnosing issues using crash reports and device logs. Can’t Post Crash Report as Attachment Crash reports have two common extensions: .crash and .ips. If you have an .ips file, please post that [1]. DevForums lets you attach a .crash file but not an .ips file (r. 117468172). To work around this, change the extension to .txt. If DevForums complains that your crash report “contains sensitive language”, leave it out of your initial post and attach it to a reply. That often avoids this roadblock. If you still can’t post your crash report, upload it to a file sharing service and include the URL in your post. Post the URL in the clear, per tip 14 in Quinn’s Top Ten DevForums Tips. Getting a Crash Report from the Xcode Organiser The Xcode organiser shows crash reports from customers. If you’re investigating such a crash and want to post a crash report: Navigate to the crash in the Xcode organiser. Note If you can’t see the right crash, check the filter popups at the top. In the list of crashes, secondary click on your crash and choose Show in Finder. That reveals the Xcode crashpoint document (.xccrashpoint) in the Finder. Secondary click on that and choose Show Package Contents. In the resulting Finder window, find a crash report (.crash) that accurately represents the crash you’re investigating and attach that to your forums post. Share and Enjoy — Quinn “The Eskimo!” @ Developer Technical Support @ Apple let myEmail = "eskimo" + "1" + "@" + "apple.com" [1] Because it’s easy to go from an .ips file to a .crash file. I usually do this by choosing File > Quick Look in the Finder. For more info about these file formats, see this post. Revision History: 2025-08-29 Added the Getting a Crash Report from the Xcode Organiser section. 2024-11-21 Added a recommendation to post the .ips format if possible. 2024-05-21 Added some advice regarding the “contains sensitive language” message. 2023-10-25 Added the Can’t Post Crash Report as Attachment section. Made other minor editorial changes. 2021-08-26 First posted.
Replies
0
Boosts
0
Views
9.7k
Activity
Aug ’25
why my Xcode organizer can not show Hangs
why my Xcode organizer can not show Hangs
Replies
1
Boosts
0
Views
274
Activity
May ’25
visionOS app icon not shown in Simulator and on test device
I strugge to make the app icon appear in the simulator and on a physical test device. Currently only the placeholder icon is shown. Using Xcode 15.4 and visionOS 1.2 If configured which app icon to use under Targets/[my app]/General: And in assets theres my visionOS app icon: Why is the app icon not used? Am I missing something or is this an Xcode bug?
Replies
3
Boosts
1
Views
542
Activity
Jan ’26
Background process not working in TestFlight
Hi everyone, I recently built an iOS application that fetches the healthkit data with the BGProcessingTask. It is working as expected in the debug with the physical device connected but its not working in Testflight. I printed out the logs but they don't show that the background process's running. Here is my code snippet. func registerBackgroundTask() { BGTaskScheduler.shared.register(forTaskWithIdentifier: taskIdentifier, using: nil) { task in LogManager.shared.addBackgroundProcessLog("registering the background task...") print("registering the background task...") self.handleBackgroundTask(task: task as! BGProcessingTask) } } func scheduleBackgroundHealthKitSync() { print("scheduling background task...") LogManager.shared.addBackgroundProcessLog("scheduling background task...") let request = BGProcessingTaskRequest(identifier: taskIdentifier) request.earliestBeginDate = Date(timeIntervalSinceNow: 60 * 1) request.requiresNetworkConnectivity = true request.requiresExternalPower = false do { try BGTaskScheduler.shared.submit(request) print("BGProcessingTask scheduled") LogManager.shared.addBackgroundProcessLog("BGProcessingTask scheduled") } catch { print("Failed to schedule task: \(error)") LogManager.shared.addBackgroundProcessLog("Failed to schedule task: \(error)", isError: true) print(LogManager.shared.backgroundProcessLogs) } } func handleBackgroundTask(task: BGProcessingTask) { LogManager.shared.addBackgroundProcessLog("handleBackgroundTask triggered") print("handleBackgroundTask triggered") let dispatchGroup = DispatchGroup() dispatchGroup.enter() // Reschedule the background sync for the next time scheduleBackgroundHealthKitSync() var taskCancelled = false // Handling expiration task.expirationHandler = { taskCancelled = true LogManager.shared.addBackgroundProcessLog("Background task expired", isError: true) print("Background task expired") dispatchGroup.leave() } let healthKitManager = HealthKitManager.shared // Start the background sync operation healthKitManager.fetchAndSendAllTypes() { success in if success { LogManager.shared.addBackgroundProcessLog("HealthKit sync completed successfully") print("HealthKit sync completed successfully") } else { LogManager.shared.addBackgroundProcessLog("HealthKit sync failed", isError: true) print("HealthKit sync failed") } dispatchGroup.leave() } // Notify when all tasks are completed dispatchGroup.notify(queue: .main) { // Check if the task was cancelled using your own flag or state if taskCancelled { task.setTaskCompleted(success: false) // Fail the task if it was cancelled } else { task.setTaskCompleted(success: true) // Complete successfully if not cancelled } LogManager.shared.addBackgroundProcessLog("Background task ended with status: \(taskCancelled == false)") print("Background task completed with success: \(taskCancelled == false)") // Logs success or failure } } Here are the logs from my device. scheduling background task... BGProcessingTask scheduled
Replies
1
Boosts
0
Views
167
Activity
May ’25
Changing watchOS Deployment Target - What happens to users on old versions
This is probably a silly question, but I couldn't find the answer to it in the forums or in the documentation, though I may be missing something. I currently have an app with a deployment target of iOS 16 and a watchOS app (not independent) with a deployment target of watchOS 7. I understand what happens when I change the deployment target on the iOS app (e.g., users with iOS/iPadOS versions less than 16 will just never see the updates in the App Store). But what happens if I change the deployment target of the watchOS dependent app to something like watchOS 8? Will users who have iOS 16 and watchOS 7 (iOS meets deployment target/watchOS does not) get the app update, and it'll just uninstall the watchOS app automatically? Will they just not see the update? Does the old version of the Watch app somehow stay on their watch while the iOS app gets updated?
Replies
4
Boosts
0
Views
2.6k
Activity
Nov ’25
Upload Symbols Failed when Archiving with Xcode 16
Hello everyone, We are seeing some warnings in Xcode 16 when I archive my iOS app for distribution. During the upload phase (either via Xcode Organizer ), I get an error like: WARNING: Upload Symbols Failed The archive did not include a dSYM for MyFramework.framework with the UUIDs: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX Ensure that the archive’s dSYM folder includes a DWARF file for MyFramework.framework with the expected UUIDs. Question: How can these warnings be fixed? Is this warning safe to ignore if I know the vendor does not supply a dSYM for their framework? If I do need a proper dSYM for full symbolication, how should I request it from the vendor or generate it myself from an XCFramework?
Replies
0
Boosts
3
Views
490
Activity
May ’25
SPM Package resources bundle id format has changed in Xcode 16
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
Replies
3
Boosts
1
Views
1.1k
Activity
Jun ’25
How can one suppress SF Symbol deprecation warnings?
Xcode 16 insists on showing deprecations of this type: Some.xib SF Symbol 'doc.on.doc' is deprecated, use 'document.on.document' instead. The problem is that the XIBs in question are set with a Deployment Target of macOS 12, where "document.on.document" actually isn't available and produces a missing image. So the warnings are wrong, as they ignore the deployment target set on the XIB. I filed a bug against this long ago and it was ignored. Having given up... does anyone know how to disable this particular warning?
Replies
0
Boosts
2
Views
277
Activity
May ’25
KeyChain Sharing with App Extensions
Hi, We are trying to use Apple Security API for KeyChain Services. The motive is to store some sensitive data in the KeyChain. Our app has Network extensions enabled which share a common app group and we want to access the data stored in the KeyChain from the extensions as well. Specifically we were exploring the SecItemAdd, SecItemCopyMatching etc family of APIs. We tried a few methods: Using the common App Group : Specifying the common app group in the "kSecAttrAccessGroup" field of the KeyChain query, allowed us to have a shared keychains for different apps (targets) in the app group, but this did not work for extensionsEnabling the KeyChain Sharing capability : We enabled the KeyChain Sharing Ability in the extensions and the app target as well, giving a common KeyChain Access group. Specifying this in the kSecAttrAccessGroup field also did not work.We tried specifying "$AppIdentifier.KeyChainSharingGroup" in the kSecAttrAccessGroup field , but this did not work as wellThe error code which we get in all these 3 cases when trying to access the Keychain from the extension is error code 25291 (errSecNotAvailable). The Documentation says this error comes when "No Trust Results are available" and printing the error in xcode using the status says "No keychain is available. You may need to restart your computer". The online Documentation says that it is possible to share keychain with extensions, but by far we are unable to do it with the methods suggested.Do we need any special entitlement for this or is there something we are missing while using these APIs?If this is possible Is there any internal/open source wrapper for Keychain APIs, that we can use?We will really appreciate help in solving this issue!Thanks!
Replies
2
Boosts
1
Views
1.5k
Activity
Dec ’25
Why can't Xcode projects be opened in multiple workspaces
So Xcode has projects. And I breakup my code/libraries/targets into those. So why after 20 years of Xcode, can a workspace, that holds projects not display the same project opened in another workspace? The workspace redirects all output the project would normally generate in DerivedData to a completely different folder by default. What this means is I have to shut one workspace, and then open the other workspace with a different set of projects to see the ones that are shared. The workspace can't build because it can't open the project shared with another one that is open. VS sln files don't have this issue, so why do workspace files.
Replies
1
Boosts
0
Views
113
Activity
Jun ’25
Unable to Launch Tests/UITests in Xcode 16 with iOS 18 Simulator
Hello, I'm unable to run any test cases in Xcode 16 with the iOS 18 simulator. Steps to Reproduce: Create a new iOS project in Xcode 16 using the default iOS app template with the testing option checked. Run any test or UI test case by clicking the "Play" icon in the Test navigator. Xcode gets stuck at the "Testing" state indefinitely. Environment: macOS 15 beta 8 Xcode 16 beta 6 iOS 18 beta 7 simulator
Replies
11
Boosts
6
Views
3.6k
Activity
Sep ’25
App Stuck on Launch Screen When Debugging on iOS 18.5 Device with Xcode 16.3
I am using a Mac computer running macOS 15.5 with Xcode version 16.3 (16E140) and an iPhone XS Max on iOS 18.5. When debugging my app on the real device using Xcode, the app gets stuck on the launch screen and fails to proceed to the main interface. There is no output in the Xcode console, and the top of the window continuously shows "attaching to [app name] on [iPhone name]". Here are the details: The same issue occurred when the phone was running iOS 18.4.1. When I tested on another real device running iOS 17, the app launched and ran normally. I’ve tried clearing the cache, but it didn’t help. I deleted the ~/Library/Developer/Xcode/iOS DeviceSupport folder, let it re-download the necessary files, and ran the app again, but the issue persists. I’m currently out of ideas and would appreciate any assistance.
Replies
1
Boosts
0
Views
222
Activity
May ’25
PHAssetChangeRequest deleteAssets not working some time
Hello Team, I try to delete photo from Photos for that i used this method, [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ [PHAssetChangeRequest deleteAssets:@[assetToDelete]]; completionHandler:^(BOOL success, NSError *error) { }]; This method pops up a dialog with Don't Allow or Delete. But some time in some iPhones not respond PHAssetChangeRequest deleteAssets method that's why that completionHandler not called because of that i can't perform any operation of PHPhotoLibrary then after. If I restart my iPhone then it works. Many users of my app complained about this issue. I have an iPhone 11 with iOS 15.3. But some iOS 12,14,16 users also face the same issue. So what exact issue is there? Is it related to iOS or a method? Thanks, Ankur
Replies
4
Boosts
3
Views
1.1k
Activity
Nov ’25