I am trying to update my app’s default splash screen with a new one, I replaced the one in “assets” folder, but the changes didn’t apply.
I tried to rename the image and change the path in app.json but didn’t work too, still shows the old image.
I did delete the build from my EAS profile and rebuild it multiple times still didn’t work.
This can happen if you accidentally switch to the bare workflow e.g. by running npx expo run:android or npx expo prebuild which will generate the android and/or ios directories. At this point you have a bare project, most things in app.json will be ignored and if you want to change the icon/splash screen, you would need to do it in the native projects directly.
Assuming you did not intend to switch to the bare workflow, you can switch back to the managed workflow.
That’s of course “prebuild” Also with Expo SDK 46 and later you should rather use npx expo ... so that it executes the CLI from the version of the expo package installed in your app rather than the global expo-cli.
The eas command doesn’t need to be run as npx eas ... because that should only be installed globally.
Unfortunately no. These sorts of changes require rebuilding the app. If you don’t like that, complain to Google and Apple
But fortunately you should not have to make changes to your app icon or splash screen or other app.json changes very often. If you’re just making changes to your JavaScript files, which will be most of the work of creating/updating your app, you will not need to create a new build.
You could set up a GitHub action to build a new development client whenever you make a change to app.json, although you’d still need to manually install it on your device/emulator.
No, this is not true. If you run eas build --profile development -p android you will get a .apk that you can install on the Android Emulator. Then you can run npx expo start --dev-client