Expo error when file size increases


I have an app that was built with Expo and it was been working fine in the Expo IDE. I also have it live for the iPhone and Android. I needed to improve the quality of the audio in the app which increased their size. Now, I get this error
FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

I know this has to do with the increased audio size, because if I lower the size to where it was before, the error goes away.

So, it seems that there is a limit to total app size, but I don’t see that published anywhere or anything that would inform me about this problem.



“App size” is an imprecise term since there are several different things that have sizes such as the total size of a standalone app, the size of the JS bundle, the amount of RAM an app uses, the size of its downloaded assets, and so on. Based on the error message you’re getting, I suspect this is one of those limits that might not be easily documentable – you’re running out of resources on your device rather than hitting some limit that Expo has intentionally programmed.

This specific error indicates that somehow your audio file is getting loaded into JavaScript. Generally when you interact with media, including audio, you want to keep it on the native side. How are you playing your audio? Is it passing through JavaScript?



sorry, I’m sure it is the size of the downloaded assets. The audio is played using basically the audio player script you have on the expo site. So, the problem is the amount of RAM on my computer?



I solved this by disabling dev mode



I tried to publish this and now get this error
TimeoutError: worker call timed out!
at Farm.childTimeout (/Users/allenweiss/Dropbox (MarketingProfs)/MindfulUSC - app/MindfulUSC/node_modules/metro-bundler/src/worker-farm/lib/farm.js:229:14)

There are no errors in the Expo app or warnings - it just throws this error.



Can you try this project in a non DropBox like environment? Like not a dropbox sub directory



I got this to work by putting some of my mp3s up on a server - clearly Expo has a limit somewhere