No assets after building for iOS

Expo version: 38 (managed)
Platform: iOS

Hi everyone.

Today I started encountering a problem when building an app for iOS.
I see no images and icons. It made me think that my assets had never been packed.

I made no changes to app.json or package.json file since my last successful build, and I have no idea why it could not work. Besides, everything works just fine on Android. Moreover, everything works as expected on iOS Emulator. And everything worked just great before today.

What happened before that broke was, I updated the macos to Big Sur. I’m not sure if it could break Expo building, so I would not think that that was the reason.

Speaking about the configuration, this is what I have in my app.json:

"assetBundlePatterns": [
      "assets/*",
      "assets/icons/*",
      "assets/images/*"
    ],

All my assets are placed in those directories.

Could you please help me to figure out, what is wrong?

hi there! can you share your project? i’m not sure how to reproduce this. what operating system version are you using on your ios device, also?

Hi, sorry, I’m not able to share the entire project.
I’m trying on iOS 14.2 (iPhone X and iPhone 11).

Does the same thing happen with a new project?

Totally did not see this when I posted my post (sorry everyone) I am also having this issue and happy to add any extra info or copy / paste my post into here.

Note I have not upgraded to Big Sur and have not made any major modifications to my Mac operating system.

1 Like

EDIT - Seems ok on iOS 13, and assets are only missing on iOS 14+
I have the same problem with my last build.

1 Like

Worked for me on iOS 14, and then stopped. It probably happened after updating to 14.2.
My emulator has 14.0, and it works fine.

Is there any Expo support here? It would be great if someone from Expo guys checked this out :pray:

Same here, I am using Expo 37. No code is changed but all the images (Local and remote) not show after build.

(My details from my previous post that I think will be deleted now.)

So basically everything has been working fine for a good while really enjoying the whole managed service and everything expo has to offer, I went to build an iOS release two days ago and I am getting none of my images in the app showing. Nothing has changed related to this to the project and android builds are working / looking as expected.

This seems to affect any tab bar images, and any stand alone images in the app and only the iOS build. This is an iOS related build problem I think, I recently added push notification support to the app but I have inspected every line of code I have added and I can’t see anything having broke images for iOS.

I am running on iOS 14 (device), simulator is fine and so is over the air publishing, android and any projects running in expo app.

Enviroment Info:
Expo CLI 3.28.5 environment info:
System:
OS: macOS 10.15.5
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 12.13.0 - /usr/local/bin/node
Yarn: 1.21.1 - /usr/local/bin/yarn
npm: 6.14.5 - /usr/local/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
Managers:
CocoaPods: 1.9.0 - /Users/scottroberts/.rvm/rubies/ruby-2.4.0/bin/pod
SDKs:
iOS SDK:
Platforms: iOS 13.5, DriverKit 19.0, macOS 10.15, tvOS 13.4, watchOS 6.2
Android SDK:
API Levels: 13, 16, 17, 19, 20, 21, 22, 23, 25, 26
Build Tools: 23.0.2, 25.0.0, 25.0.2, 26.0.2, 28.0.3
System Images: android-23 | Google APIs ARM EABI v7a, android-26 | Google APIs Intel x86 Atom
IDEs:
Android Studio: 4.0 AI-193.6911.18.40.6514223
Xcode: 11.5/11E608c - /usr/bin/xcodebuild
npmPackages:
expo: ^38.0.0 => 38.0.10
react: 16.11.0 => 16.11.0
react-dom: 16.11.0 => 16.11.0
react-native: https://github.com/expo/react-native/archive/sdk-38.0.2.tar.gz => 0.62.2
react-native-web: ~0.11.7 => 0.11.7
npmGlobalPackages:
expo-cli: 3.28.5
Expo Workflow: managed

1 Like

Same problem here.

I have built my app one week ago. That build is showing the assets on all platforms (emulators, Android, iOS). When I build the same code now (with only version numbers changed), I am missing the assets only on an iPhone XS with iOS 14.1 installed (some images and the arrow of the stack navigation Back button). On an iPhone 6 with 12.4.8, the assets do show up in my app.

I did upgrade expo-cli in the meantime. I don’t know if it can be related.

Expo version: 38 (managed)
Platform: iOS
expo-cli version: 3.28.5
Build method: expo build:ios -t archive (with --release-channel flag)

1 Like

I confirmed this behavior with SDK 38, but upgrading to SDK 39 with expo upgrade fixed it for me. Can you try that and let me know how it goes? Maybe this is an iOS 14 issue (from the looks of it, everyone here is testing on iOS 14)

Hello Charlie! Thank you for the response.

I had a problem upgrading to expo 39. I tried it like a month ago and there was a conflict between reanimated versions or something with one of packages that I used in the app. It seems that, if I have to upgrade expo, I’ll have to get rid of this library, and write this logic myself which is a bit complicated, though possible.
At the same time, I worry that Expo 38 sdk apps now miss assets when it comes to the latest iOS version, right? Seems to be serious.

@unit37akasrd I’m not really sure what to say about your issue with reanimated (it should work in SDK 39, so there’s probably something else at play there), but yes this definitely is a serious issue if a recent iOS update broke images in SDK 38. Have you been able to pin down which iOS version breaks it? You mentioned it’s working on your iOS 14 simulator, but it is not working on my iOS 14 simulator. You should test on as simple of a project as possible, I used expo init --template=expo-template-blank@sdk-38 with a plain

      <Image
        source={require("./assets/favicon.png")}
        style={{ width: 200, height: 200 }}
      />

component added

I can confirm that upgrading to SDK 39 solves my issue. Thanks, @charliecruzan!

We just pushed out a fix to our builders, so if you’re still on SDK 38, please rebuild with expo build:ios, and then test again! If you use turtle-cli, you’ll need to upgrade that package to the most recent version

3 Likes