Posts under Developer Tools & Services topic

Post

Replies

Boosts

Views

Created

App Store Review: Zero Consistency
I’ve officially given up trying to release my app on iOS. Apple’s latest rejection quotes: • Guideline 5.1.5 – Location Services “The app uses location data for features that are not relevant to a user’s location. Specifically, the app is not functional when Location Services are disabled. To resolve this issue, please revise the app so that the app is fully functional without requiring the user to enable Location Services.” • Guideline 5.1.1 – Data Collection and Storage Complaining that the app “encourages or directs” users to go to Settings to enable location. My app is literally built around live location. The entire point is: you walk the circuit, see telemetry synced with where you are. No location, no app. That is the product. Apple wants the app to be “fully functional” without the one thing it needs to exist. That’s like rejecting a camera app because it doesn’t “fully function” with no camera permission. What makes this worse is the complete lack of consistency. Every time I fix what they ask, the next review comes back with a different problem, instead of a clear list of issues to solve in one go. No stable checklist, no coherent interpretation, just moving goalposts and copy-paste template replies that ignore reviewer notes and how the app actually works. They don’t seem to understand how incapable this process is for serious, niche apps. It’s not about quality or privacy at this point, it’s about box-ticking and cover-your-back behaviour. Meanwhile, small devs are supposed to burn weeks rewriting core flows just to satisfy someone who clearly hasn’t even tried to use the app properly. I’ve decided to keep the app Android-only. iOS simply isn’t worth fighting with a review system that can’t even be consistent with its own guidelines. Has anyone else had similar problems with Apple inventing a new issue every review instead of giving you one clear, stable set of requirements to fix?
1
0
53
5d
Code Coverage Not Generated in Xcode 26.1 Despite Successful Test Runs
We’re facing an issue with Xcode 26.1 where code coverage is not being generated. All our test cases run and pass successfully, but the .xccovreport / .xccovarchive files are never produced. Code coverage is enabled in the scheme, and this setup used to work correctly in earlier Xcode versions. We are trying to determine whether this is a configuration issue on our end or a possible Xcode 26.1 bug. Is anyone else experiencing the same problem with code coverage in Xcode 26.1? Any insights or workarounds would be appreciated.
1
0
119
5d
Xcode Cloud Export Archive Fails with Xcode 26.2 RC
Export archive step fails in Xcode Cloud when using Xcode 26.2 (17C48) RC. The same project exports successfully when switching back to Xcode 26.1 in Xcode Cloud workflow settings. The same project exports successfully when using Xcode 26.2 RC locally. Projects without Apple Watch app do not encounter this issue (not so sure about this). From Xcode Cloud UI: Exporting for App Store Distribution failed. Please download the logs artifact for more information. Run command: 'xcodebuild -exportArchive ... Command exited with non-zero exit-code: 70 From xcodebuild-export-archive.log: error: exportArchive Automatic signing cannot update bundle identifier "io.***.***.watchkitapp". error: exportArchive No profiles for 'io.***.***.watchkitapp' were found error: exportArchive Automatic signing cannot update bundle identifier "io.***.***". error: exportArchive No profiles for 'io.***.***' were found ** EXPORT FAILED ** IDEDistribution: App Store Connect request for store configuration failed for account Session Proxy Provider (Account "Session Proxy Provider": Unable to authenticate with App Store Connect (Error Domain=DVTITunesSoftwareServiceFoundation.DVTServicesSessionProviderCredentialITunesAuthenticationContextError Code=1 "(null)")) DVTServices: Sending request A7605D4E-2892-4B6D-9197-90BD3AB53D67 to <http://172.16.57.4:8089/services/v1/capabilities> Payload: {"urlEncodedQueryParams":"teamId=984L9QX9X5&filter%5BreferenceType%5D=bundle&filter%5BincludeRequestable%5D=true&limit=200"} { "errors": [{ "id": "fb67ecdb-103b-4446-a2db-618fd6bd99e7", "status": "400", "code": "PARAMETER_ERROR.INVALID", "title": "A parameter has an invalid value", "detail": "A parameter 'filter[includeRequestable]' has an invalid value : ''includeRequestable' is not a valid field name.'", "source": { "parameter": "filter[includeRequestable]" } }] } DVTServices: Could not fetch capabilities from network due to error: error = 'A parameter has an invalid value' Workaround Switching Xcode Cloud workflow to use Xcode 26.1 works around the issue. Using Xcode 26.2 RC locally works around the issue.
6
5
362
6d
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
170
6d
Xcode 26 cannot run app on simulator, as well as unit test
Hi, When running unit test or app on simulator, it got process crashed mostly of the case, it works fine on the same project, like in Xcode 16.x. Look at the crash report, it randomly crashed when loading libraries, like 2 events attached below... My mac is M3 macbook pro, mac OS is 15.7.2 Anyone know how to sort it out, it is really annoying, can only use device for debug now. Thx... 0x1c693f000 - 0x1c6944fff com.apple.TelephonyUIFramework.axbundle (1.0) <c877fa21-e6e7-31d9-98df-5837e2a98628> /Volumes/VOLUME/*/TelephonyUIFramework 0x1c6b17000 - 0x1c6b18fff com.apple.EmojiKit.axbundle (1.0) <49e64e22-eacd-38a0-af32-fe8834f53170> /Volumes/VOLUME/*/EmojiKit 0x1d7e90000 - 0x1d7eb3fff com.apple.PassKitUI.axbundle (1.0) <caeeabe5-17b1-3d16-8d52-1f7bb5f631f0> /Volumes/VOLUME/*/PassKitUI 0x1d835f000 - 0x1d8388fff com.apple.PhotosUICore.axbundle (1.0) <3476e3ea-772e-3dea-a3f3-a9baed307eeb> /Volumes/VOLUME/*/PhotosUICore 0x1d828f000 - 0x1d82a9fff com.apple.EventKitUIFramework.axbundle (1.0) <a91493a9-7b40-3df0-884d-7954b0dbb89b> /Volumes/VOLUME/*/EventKitUIFramework 0x1c6b30000 - 0x1c6b85fff com.apple.dyld.dyld-framework (*) <c8a41039-7c9c-324a-9770-736b63001f33> /Volumes/VOLUME/*/Dyld.framework/Dyld 0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ??? Error Formulating Crash Report: dyld_process_snapshot_get_shared_cache failed RIP register does not match crashing frame (0x0 vs 0x7FF7FFF34A6C) EOF or this one: 0x10ad57000 - 0x10ad5efff libBacktraceRecording.dylib (*) <1083d13e-5185-3883-bedf-ec633b9aa76f> /Volumes/VOLUME/*/libBacktraceRecording.dylib 0x10ad7a000 - 0x10ad7cfff libLogRedirect.dylib (*) <a174f56a-c354-33bf-a458-d2e8582d3ae9> /Volumes/VOLUME/*/libLogRedirect.dylib 0x102751000 - 0x102755fff com.velobank.dev (25.11.0) <4ecd00ef-c3fc-3353-ace5-05c9ce42bae9> /Users/USER/Library/Developer/CoreSimulator/Devices/2F963721-D9A1-4CBF-A906-4646612795E1/data/Containers/Bundle/Application/FBA0FA3E-093F-48C5-8069-542F8949779D/ios_example.app/ios_example 0x0 - 0xffffffffffffffff ??? (*) <00000000-0000-0000-0000-000000000000> ??? Error Formulating Crash Report: dyld_process_snapshot_get_shared_cache failed RIP register does not match crashing frame (0x0 vs 0x10276AAE0) EOF
0
1
35
6d
Metal toolchain compilation error after migration to MacOS 26 and XCode 26.1
Hello. I migrated yesterday two machines from OS15 to OS26 (same Ram; M1Max chip). On the first one, a MBP, everything is allright, and my old Metal projects can compile and run, even with MacOS12 as a destination. On the second computer (MacStudio) I got a compile "error: cannot execute tool 'metal' due to missing Metal Toolchain; use: xcodebuild -downloadComponent MetalToolchain". I spent hours on many forums and tried all proposed solutions and still get the same error. Any idea? Thanks
2
0
95
6d
Request: the role access accessing diagnosticSignatures in the REST API
We want to automate getting crash reports from ASC via CI or some other mechanism. Having developers manually check the Xcode Organizer isn't a scalable solution for us. Even with a api key with the App Manager role, we get a 403. https://api.appstoreconnect.apple.com/v1/diagnosticSignatures?limit=50 requires ADMIN role access which makes it a non starter in our org because of access restrictions. Since developers have access to the crash reports via Xcode in their developer roles, it should make sense for the REST API to expose the same data without ADMIN permissions.
0
0
22
6d
URGENT Update: Org Enrollment H6899PPP9F (AI Prosperity Limited) – 7+ Weeks Pending Activation (JV Sales Proof Attached)
Hi Apple Developer Community and Enrollment Team, Update on organization enrollment H6899PPP9F for AI Prosperity Limited (D-U-N-S [yours]): All initial issues (D-U-N-S, email blocks, docs) resolved weeks ago, with enrollment number issued—yet final activation remains pending over 7 weeks since full submission on 11/27/2025. No ETA or outreach despite prior calls/emails/forum posts. To highlight the stakes: Our app powers a joint venture under the "Freedom Mastery" brand (planners promising QR-app access), with ~+10K customer engagements via physical sales trying to download the app. Key proof (attachments), 500-1000 customers added every day from now on: Amazon Seller Central (Nov 1–Dec 11, 2025): 9,360 units, $323K+ sales, avg $30/order—listings here tease app integration (1K–4K reviews/SKU). Shopify (same period): 9,999+ orders, $63K+ sales, 195K sessions—direct traffic to app waitlist. Redacted JV agreement excerpt: Confirms AI Prosperity Limited's legal authority/control over "Freedom Mastery" branding and sales. Dev entity (AI Prosperity Limited) matches all docs/D-U-N-S, but the JV tie may need verification—happy to provide full details. These buyers (many iOS users) are inquiring daily; delays risk churn/refunds in our habit-tracking space. Request: Escalate to senior review for activation/ETA. Ready for any clarifications. Thanks—excited to launch on Apple! Frederik AI Prosperity Limited Enrollment ID: H6899PPP9F
1
0
93
6d
You do not have required contracts to perform an operation.
Hi, I need help with the error: “You do not have required contracts to perform an operation.” (ID: cc897baf-6551-474b-bbef-3dd5bdf89931) When I try to distribute an archived build from Xcode, App Store Connect shows a banner asking to review a new agreement. But when I click it, I’m redirected to Agreements, Tax and Banking, and there is no agreement to accept — the page is empty. I checked with the team, and none of us can see the agreement. Is it possible that the required agreement is available only to the Account Holder and not visible to Admin or Developer roles? Could you please clarify what exactly this error means and how we can locate the missing agreement? Thanks.
1
2
147
6d
SPM Traits not working correctly with multiple targets in same Xcode workspace (App + App Clip)
Hi, I've just migrated to Swift Tools 6.2 and package traits, and I'm encountering an issue when using traits with multiple targets in the same Xcode workspace. Setup: Main iOS app target App Clip target Both consume the same local packages (e.g., UIComponents) What I'm trying to achieve: Main app imports packages without the COMPACT_BUILD trait App Clip imports packages with the COMPACT_BUILD trait enabled Package configuration (simplified): // UIComponents/Package.swift let package = Package( name: "UIComponents", platforms: [.iOS(.v18)], traits: [ .trait(name: "COMPACT_BUILD", description: "Minimal build for App Clips"), ], // ... targets: [ .target( name: "UIComponents", dependencies: [...], swiftSettings: [ .define("COMPACT_BUILD", .when(traits: ["COMPACT_BUILD"])), ] ), ] ) In the code: #if COMPACT_BUILD // Excluded from App Clip #endif The consumer packages: Main app's package imports without trait: .package(path: "../UIComponents") App Clip's package imports with trait: .package(path: "../UIComponents", traits: ["COMPACT_BUILD"]) The problem: When building the main app target, the COMPACT_BUILD compiler condition is unexpectedly active — even though the main app's dependency chain never enables that trait. It seems like the trait enabled by the App Clip target is "leaking" into the main app build. I confirmed this by adding #error("COMPACT_BUILD is active") — it triggers when building the main app, which shouldn't happen. If I disable the App Clip target from the build scheme, the main app builds correctly with COMPACT_BUILD not defined. I am also able to build the App Clip separately. Environment: Xcode 26.2 swift-tools-version: 6.2 iOS 26.2 Questions: Is this expected behavior with Xcode's SPM integration? Are traits resolved workspace-wide rather than per-target? Is there a workaround to have different trait configurations for different targets consuming the same package? Or do I need to fall back to separate package targets (e.g., UIComponents and UIComponentsCompact) to achieve this? Any guidance would be appreciated. Thanks!
0
0
49
6d
Case ID: 102772391808
We are enrolling on behalf of an organization. We do have following information with us. • Legal binding authority, • Legal entity status, • A D-U-N-S® number, and • A website. We are always getting the message as :- There may be an issue with your account that needs to be resolved before you can continue. Please contact support. This seems very generic message we are not getting the reason why we are not able to enroll for apple dev program.
0
0
37
1w
VoIP Push Notifications Not Delivered in Background/Killed State (Using AppDelegate)
Hello, colleagues. I am reaching out to the community with an issue that is likely quite common. Unfortunately, I have not been able to resolve it independently and would like to confirm if my approach is correct. Core Problem: VoIP push notifications are not delivered to the application when it is in the background or terminated. After reviewing existing discussions on the forum, I concluded that the cause might be related to CallKit not having enough time to register. However, in my case, I am using AppDelegate, and in theory, CallKit registration should occur quickly enough. Nevertheless, the issue persists. Additional Question: I would also like to clarify the possibility of customizing the CallKit interface. Specifically, I am interested in adding custom buttons (for example, to open a door). Please advise if such functionality is supported by CallKit itself, or if a different approach is required for its implementation. Thank you in advance for your time and attention to my questions. For a more detailed analysis, I have attached a fragment of my code below. I hope this will help clarify the situation. Main File @main struct smartappApp: App { @UIApplicationDelegateAdaptor private var delegate: AppDelegate @StateObject private var navigationManager = NavigationManager() init() { print("Xct") if !isRunningTests() { DILocator.instance .registerModules([ ConfigModule(), SipModule(), AuthModule(), NetworkModule(), CoreDataModule(), RepositoryModule(), DataUseCaseModule(), SipUseCaseModule() ]) } } func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { print("Axtest") completionHandler(.newData) } var body: some Scene { App Delegate File class AppDelegate: UIResponder, UIApplicationDelegate { private let voipRegistry = PKPushRegistry(queue: .main) private var provider: CXProvider? func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { setupPushKit() setupCallKit() return true } public func regist(){ setupPushKit() setupCallKit() } private func setupPushKit() { voipRegistry.delegate = self voipRegistry.desiredPushTypes = [.voIP] DispatchQueue.main.async { self.voipRegistry.pushToken(for: .voIP) } } // MARK: - CallKit Setup private func setupCallKit() { let configuration = CXProviderConfiguration(localizedName: "MyApp") configuration.maximumCallGroups = 1 configuration.maximumCallsPerCallGroup = 1 configuration.supportsVideo = true configuration.iconTemplateImageData = UIImage(named: "callIcon")?.pngData() provider = CXProvider(configuration: configuration) provider?.setDelegate(self, queue: .main) } // MARK: - Background Launch Handling func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) { print("Axtest") completionHandler(.newData) } } extension AppDelegate: PKPushRegistryDelegate { func pushRegistry(_ registry: PKPushRegistry, didUpdate pushCredentials: PKPushCredentials, for type: PKPushType) { APNsImpl().registerToken(token: pushCredentials.token.map { String(format: "%02.2hhx", $0) }.joined()) } func pushRegistry(_ registry: PKPushRegistry, didReceiveIncomingPushWith payload: PKPushPayload, for type: PKPushType) { guard type == .voIP else { return } print("call kit") let payloadDict = payload.dictionaryPayload let update = CXCallUpdate() update.remoteHandle = CXHandle(type: .phoneNumber, value: "dsfsdfddsf") update.hasVideo = payloadDict["hasVideo"] as? Bool ?? false provider?.reportNewIncomingCall(with: UUID(), update: update, completion: { error in if let error = error { print("Failed to report incoming call: \(error.localizedDescription)") } else { print("Successfully reported incoming call") } }) } }
1
0
89
1w
Running tests on multiple simulators and local mock servers
Hello, I have a question about running tests on multiple simulators. Currently, my company has a WDIO+Appium test suite with XCUITEST driver that runs on a single simulator through a mockttp proxy (we are intercepting and mocking some of the responses from our APIs and pass through the rest). In order to route the traffic we are currently using 'networksetup -setsecurewebproxy '. Everything works as expected. With growing number of tests we'd like to scale number of simulators on a single host to 3-5. We have a working setup but the problem are system-wide proxy settings routing traffic from multiple simulators, which we can't distinguish by UDID or any other means, we know of. We can spin multiple mock servers on the same machine but we are struggling to find the way to route the traffic on a simulator basis. In the end, both options are viable: 1 mock server running for multiple simulators N number of mock servers for N number of simulators Has anyone had the same/similar problem? How to approach this? We are currently running on Sequoia OSX and platform version 18.6. Thanks!
0
0
34
1w
Help: Compiled Timeline Issues
I have developed a fun living diorama world using Reality Composer Pro and XCode. Everything is as it should be, and it looks/works great ... until it does not. If I seem to make any change to any of the 10 timelines that I am using (all on the same scene, no nested scenes), running the app in simulator, device, and via testflight throws errors around compiled timelines, leading to the black screen of death. Every time I clean and run, the timelines in questions might change. Its very frustrating and impossible to track down. Heres are some examples. AssetLoadRequest failed because asset failed to load '/ (3661553931319769725 Timeline (RealityFileAsset)URL/file:///var/containers/Bundle/Application/F4408256-6014-4264-9E4B-F74AEF0EDE53/SantasVillage.app/RealityKitContent_RealityKitContent.bundle/RealityKitContent.reality/Timeline_779.compiledtimeline)' (failed to register asset) Asset / (13631856135570808851 AnimationLibraryAsset (RealityFileAsset)URL/file:///var/containers/Bundle/Application/F4408256-6014-4264-9E4B-F74AEF0EDE53/SantasVillage.app/RealityKitContent_RealityKitContent.bundle/RealityKitContent.reality/AnimationLibraryAsset_1.compiledanimationlibraryasset) failure: failed to register asset Asset 10430065658338454790 AnimationScene (RealityFileAsset)URL/file:///var/containers/Bundle/Application/F4408256-6014-4264-9E4B-F74AEF0EDE53/SantasVillage.app/RealityKitContent_RealityKitContent.bundle/RealityKitContent.reality/AnimationScene_14.compiledanimationscene failure: failed to register asset I went with recommended fixes of closing RCP > Clean Build Folder > Delete Derrived Date (multiple ways) > Re-Open Xcode > Reset Package Cache > Re-Open RCP via XCode > Make a Change > Save > Clean Build Folder Again > Run. Sometimes it works. Most times it does not. I then found my own little work-around, but its not always working as is literally costing me days of wasted time messing around with this. I will DISABLE all timelines, do the above clean method, rerun with no timelines, and it resolves. Then, turn on timelines ONE BY ONE and run until I get another error. Then, rebuild that timeline and nothing else. This is not sustainable. There must be some better way to do this? Or, perhaps I am doing something wrong? Please help if you can.
2
0
67
1w
Build keeps failing with PhaseScriptExecution error
I have a Unity AR project that I want to build for iOS. The build in Unity succeeds just fine, but when it opens in XCode, whatever I do, it keeps showing this error in GameAssembly: "Command PhaseScriptExecution failed with a nonzero exit code". This error also doesn't open when choosing "Reveal in Log". I have added the IL2CPP package in the Unity version, deleted and reentered scenes and no issue on Unity's side. On XCode I signed in with my developer account, tried deleting derived data, made a clean build and still the issue persists.
1
0
92
1w