I have been getting an error for about 3 days.
Your iOS app icon is missing or is an invalid format. The icon must be a 1024x1024 PNG image with no transparency.
Check your icon image and icon configuration in app.json.
Learn more: https://docs.expo.dev/guides/app-icons/
I have used the Figma template
I have used the https://buildicon.netlify.app
Both of those tool result in:
./assets/icon.png: PNG image data, 1024 x 1024, 8-bit/color RGBA, non-interlaced
So I use
mogrify -alpha off ./assets/icon.png
./assets/icon.png: PNG image data, 1024 x 1024, 8-bit colormap, non-interlaced
When I run my build locally, I notice this message:
[PREBUILD] » ios: icon: This is the image that your app uses on your home screen, you will need to configure it manually.
share the exact image you are using
How are you building locally? With
npx expo run or with
eas build --local?
If you’re using
npx expo run (and therefore
prebuild) you might need to regenerate the native projects with
npx expo prebuild --clean if you subsequently changed the icon location or something like that in
Icon after alpha channel removed
I am running low on remaining builds because the error keeps occurring which is why I am using local. The issue also occurs when using the remote eas.
I tried expo prebuild --clean to no luck.
Sure, but you didn’t answer my question
I think you’re using
eas build --local rather than
npx expo run:ios, right?
Had you previously run
npx expo prebuild or
npx expo run:ios? Do you need the native projects? If not, try deleting
ios directories and see if
eas build -p ios --local works.
See expo.fyi/prebuild-cleanup for some more info on cleaning up after prebuild.
I have been running
eas build --platform ios --local
I do not see any
OK, that’s weird. If you run
npx expo prebuild it will generate those. But if you do not need the native projects, then don’t do that
Are you able to put a minimal project on GitHub that reproduces this problem?
Awesome idea, I made a mini app with the image files, they work without issue.
I am going to slowly work through the code to copy the existing project to the new project to work out what was causing the issue.
I will keep you posted.
Thank you for all your help.
I am so silly.
I created a
app.config.js instead of renaming
As such I didn’t have all of the settings in
Thank you for all your help and support!
Glad you figured it out
You can actually have both. In the past I’ve done this to build different variants of an app. I kept all the common config in
app.json and just the variable bits in
But nothing wrong with just putting everything in