If you want to run prebuild
, you should use npx expo prebuild ...
. i.e. you should be using the locally installed expo
cli instead of a globally installed expo-cli
.
Also, with the default eas.json
, a preview
build is like a production
build, except that the buildType
is apk
, so you can just do this:
eas build -p android --profile preview
No need to change the production
profile to buildType
apk
.
If the only thing you’re modifying in the android
native project is AndroidManifest.xml
, then you could write a Config Plugin to make that change automatically for you, instead of making the change manually. Then it would automatically apply the change during prebuild
, which means you can have a fully managed Expo app, without any android
or ios
directories. (If you do not have an android
or ios
directory, the build servers automatically run prebuild
for you during the build process.)
This does not mean that AsyncStorage is deprecated. It just means that it’s calling a deprecated API. This is pretty common in Java code and not something to be worried about. It’s for the AsyncStorage maintainers to worry about.
Yes
That’s normal. That’s because Expo SDK 48 is tested against a particular version of AsyncStorage, so they specify that version to make sure it works. Normally when they release a new SDK version they update to later versions of their dependencies.
So basically, if your build is failing it’s not because of the above warnings and version of AsyncStorage.
In the build log you’ll probably see something about one of the gradle tasks failing. Search for FAILED. e.g. see the screenshot here: