iosipaios16xcode14

iOS Build not working after upgrade Xcode 14.2


Screenshot of UIAlertView with title: App Needs to Be Updated...

I am trying to install an IPA to my iPad, but it's not working and is throwing an error (shown above).

I tried like creating new provision profile and tried upgrade Xcode to what Apple suggested. Anyone know how to fix this?

Screenshot of AppStore Connect validation error message

Platform: Xcode 14.2
iPadOS: 15.6.1


Solution

  • The error message from App Store Connect is pretty clear:

    This app was built with the iOS 15.2 SDK. Starting April 25, 2023... all apps... must be built with the iOS 16.1 SDK or later, included in Xcode 14.1 or later.

    [Emphasis is my own]

    If you're seeing this error message, you haven't properly re-compiled your app using the latest iOS SDK included in Xcode.

    Local Recompile

    It sounds like you're trying to do an ad-hoc / manual IPA deployment. If that's the case, you need to re-build your app in Xcode 14.1 (or later), then archive it (again, using Xcode 14.1 or later), and export the archive to a signed IPA (again Xcode 14.1+).

    FYI: This issue has absolutely nothing to do with provisioning profiles. So regenerating those is probably going to be a whole lot more trouble than its worth.

    Check Your Pipelines (if applicable)

    If you're distributing an IPA through some Continuous Integration system, like Azure, Firebase, Fastlane, etc. you'll need to make sure that you've properly upgraded your pipeline. Oftentimes, these pipeline tools will automatically point to the "latest SDK" available. But, in my experience, the Azure support team is excruciatingly slow to rollout updates for Xcode / iOS SDK versions. So I'd double check that if you're using a CI.

    Bump the Version / Build Number

    If you've done all of that and are still having issues, there could be a caching problem: either on your device or with your Xcode build. The easiest way to resolve this would be to bump your version number, thus ensuring your device knows this is a new build, and forcing Xcode to do some work to recompile things.