Apple warning after deploying to Apple Store warned that we need to build using iOS sdk 16.1. How do we define the sdk used by Expo Build?

Please provide the following:

  1. Expo SDK: 45.0.8
  2. Platforms(Android/iOS/web/all): All
  3. Add the appropriate “Tag” based on what Expo library you have a question on.

Warning from Apple:
SDK version issue. This app was built with the iOS 15.5 sdk. Starting April 25, 2023 all ios and ipados apps submitted to the app store must be build with ios 16.1 sdk or later…

Hi @bjs0008

Try specifying an image with Xcode 14.1 or 14.2.

The Build server infrastructure page has a list of iOS server images. The default image already includes “Xcode 14.1 (14B47b)”, but they say:

Note: If you do not provide image in eas.json, your build will use default image. However, in some cases, we select a more appropriate image based on the Expo SDK version or React Native version. You can check what image is used for a build in the “Spin up build environment” build logs section.

I’m not sure exactly what they mean by “more appropriate”, so maybe you will need to upgrade to a later Expo SDK version if you run into problems with using an image with a later version of Xcode.

See the “managed project with several profiles” example from the Build schema for eas.json page for an example of how/where to specify the image.

If you need to change the default deployment target you can do it with BuildProperties, but as far as I remember that’s only supported from Expo SDK 46.

did you fix that? I am having the same issue now

What Expo SDK version are you on?

You’ll probably need to upgrade

Hello Michael,
@expo/metro-config: ^0.5.1 => 0.5.2
@expo/webpack-config: ^18.0.1 => 18.0.2
expo: ~46.0.19 => 46.0.20

I believe it should work with Expo SDK 46 as long as you build with Xcode 14.1 or higher.

https://old.reddit.com/r/expo/comments/12pewer/need_to_be_able_to_build_for_ios_161_sdk/jgmsy2j/

How are you building your app? Are you specifying a build server image in eas.json?

I’m not specifying an build server image.
How would I do that?

Check my message to @bjs0008 above. Basically you can check the available images at the “iOS server images” link and see the mentioned example for how you can add the image to eas.json.

e.g.:

{
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal",
    },
    "preview": {
      "distribution": "internal",
    },
    "production": {
      "ios": {
        "image": "default"
        // "image": "latest"
        // "image": "macos-monterey-12.6-xcode-14.2"
      }
    }
  }
}

You could try specifying an image of "default". If that doesn’t work, try "latest". If that doesn’t work maybe try hard coding the exact image like above.

If that doesn’t work I think you might have to upgrade to Expo SDK 47 or 48.

Here’s a comment from one of the Expo team members about this:

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.