How to survive Xcode toolchain regressions without losing a week

Xcode 26.4 quietly removed the ability to run app-hosted unit tests against physical iOS 16 devices, and Xcode 27 finally added a Delete Derived Data menu item — which the community correctly read as Apple admitting the IDE corrupts its own caches on a regular basis. Between those two announcements is the entire reality of…

How to escalate a stuck App Review or account flag when Apple Support goes silent

Your app has been stuck in “Waiting for Review” for ten days. You have filed three expedited-review requests and five support tickets. A “senior advisor” promised a callback two weeks ago and went silent. Meanwhile, the launch event you planned around your release date is next week. There is no official escalation path for any…

How to unblock a stuck notarization, fix Team ID prefix errors, and survive 3.1.1 review

A notarization stuck “In Progress” for 60 hours. A returning developer’s app failing validation with error 90286 because Automatic Signing prefixed the bundle ID with a 15-year-old Developer ID instead of a Team ID. A Canadian VoIP startup rejected under guideline 3.1.1 with no clear test for whether prepaid calling credits count as “intermediary currency.”…

How to structure SwiftUI navigation with NavigationSplitView and a router

You moved your SwiftUI app to a router pattern with a top-level NavigationPath, added a NavigationSplitView for iPad and Mac, and now pushing a view from the router replaces the entire content column instead of stacking inside the sidebar. You reach for .isDetailLink(false) — the old escape hatch — and find it does nothing once…

How to keep craft and signal in an AI-flooded iOS dev community

Two of the most-upvoted threads on r/iOSProgramming this month say the same thing in different words: “I miss the programming aspect of iOS programming” and “Why would anyone start a new app today?”. The complaint underneath both is not really about LLMs. It is about signal. The phrase “iOS developer” used to mean someone who…

How to plan for the iOS 27 SDK cliff: Liquid Glass, size classes, and Reality Composer Pro migrations

Apple’s annual SDK cycle keeps shipping silent breaking changes. The UIDesignRequiresCompatibility plist key is honored on Xcode 26 builds and ignored on Xcode 27 builds. iOS 27 collapses iPhone horizontal size classes to compact, breaking ten years of storyboard constraint variations with no runtime warning. Reality Composer Pro 3 imports projects from RCP 2 with…