Reducing App Size
marked this post as
you can now reduce the app size by up to 10x by using EAS Build for managed apps in SDK 41+! https://blog.expo.io/eas-build-april-preview-update-ebd7dff9dd25
Brent Vatne: Thank youuuuuuu! Finally. This is a big day for technology
Brent Vatne: Finally even after years im happy to see this progress, great job guys !!
Google Sign-in fails if "enableDangerousExperimentalLeanBuilds" : true is set in app.json
I have tried on Android 9, 10 and 11.
After clicking on button, the account selection popup/screen doesn't shows up.
Any news on the ios version?
Steve Moretz: EAS Build is the way forward here: https://blog.expo.io/expo-application-services-eas-build-and-submit-fc1d1476aa2e
we'll release a beta of managed support in the coming weeks
Brent Vatne: When I heard about that EAS build it already blew my head.Didn't know that can support the size reduction as well!
That is just staggering!
Will it be free?
For building once in a week maybe for example?
That is a game changer.
I have a hackintosh it is on my lenovo laptop, apple introduced the new cpus they built and they're going to that gradually.
Meaning every one like me or with old macs using intel cpus will get totally screwed if they can't afford to buy a new mac!
EAS can save our lives!
Michael Wood: So none of EAS build/EAS Submit/EAS Update will have a free tier?That is disappointing!
At least developers should be able to make the apps for free with EAS build and then for EAS Submit and EAS Update it is logical to pay.
Steve Moretz: I think you misread! It says at the bottom "these services will be available under the free plan"
Michael Wood: My apologies, I just saw the ticks of the features under free plan, under comparison table.Thanks for clarification.
I just wanted to give "enableDangerousExperimentalLeanBuilds" : true a shot to see how much it cuts from the size, but my apk build failed.
[stderr] /app/turtle/workingdir/android/sdk40/android-shell-app/app/src/main/java/host/exp/exponent/generated/AppConstants.java:8: error: package expo.modules.splashscreen does not exist
I just thought to report it. Btw, what's the preferred way of reporting issues like this so that it get the attention of the dev team? Would a link to the log file in my account would work? Thanks!
Behnam Kamrani: Hello, did you fix this issue? I'm also experiencing this
Esther Amara: sorry; I did not!
Esther Amara: "enableDangerousExperimentalLeanBuilds" : true fails in sdk40 but works in 39. I tried all I could but to no avail. I had to downgrade to sdk39
Nathanael Martins: I think I fixed it, kinda. I had to download expo-splashscreen package, and it worked.
Esther Amara: Wow! okay. Definitely trying it right now
Edit: It worked. You're a life saver Esther. My app size went from 53 to 31.4 MB
From your name, you're Nigerian. Do you mind if we connect? I'm in search of a smart React Native developer from Nigeria. Here is my Telegram handle https://t.me/nate_martins
Nathanael Martins: Thank you. Sending a message now
Hey folks - Any update on this one? Is https://docs.expo.io/build/introduction/ the planned solution for this?
Sascha Reuter: Yes, EAS Build is the planned solution:
"The goal for managed projects with EAS Build is to remove the limitations commonly encountered with the expo build service: it will produce smaller binaries by only including the dependencies you need[...]"
Merged in a post:
Light weight projects
Hi, Expo projects are really large for a normal android app. It's hard to download and keep in your phone. I wish there was feature in which we could remove all unused libraries like those in react. Also exclude some unnecessary libraries to reduce size.
https://medium.com/@aswinmohanme/how-i-reduced-the-size-of-my-react-native-app-by-86-27be72bba640 Can this be achieved directly from expo I really feels the app size is very high for expo
When I set "enableDangerousExperimentalLeanBuilds" : true in app.json and try to submit to play store, I get this error/warning:
"This App Bundle contains native code, and you've not uploaded debug symbols. We recommend you upload a symbol file to make your crashes and ANRs easier to analyze and debug."
How do I fix this? Thanks.
Nathanael Martins: I am getting this warning in play console on my managed flow app too generated on sdk-38.
Summer Syed I just ignored the warning for now while anticipating the Expo team to come up with a better way to reduce app size. At least the Play Store does not prevent the app from being served.
This doesn't work anymore if you're using sdk40. Expo team, kindly fix this Michael Wood
Edit: For future readers, to get it to work, you have to install expo-splash-screen before building.