0

I'm working on a React Native mobile application for iOS and Android. I've always been able to make development builds using the command: eas build --profile development --platform android --clear-cache

The application was originally on expo v50. I recently upgraded to v51. to implement some new features and everything worked fine, didn't have any problems with building. Then a few days later i upgraded to expo v52. to be able to implement the new react-navigation preloading. This worked fine too in the beginning and i was also able to make an android development build for that without any problems. Then a day later i continued working on this branch, trying to fix some bugs that come along with the upgrade to expo v52. including a splashscreen issue.

In order to test if my changes to the splash screen were successful, i needed to make a new development build with expo. This failed all of a sudden. Even though all of older changes worked perfectly on the previous build i had.

The one error that keeps returning is this:

> Task :app:processDebugMainManifest FAILED
Incorrect package="<package-name>" found in source AndroidManifest.xml: /home/expo/workingdir/build/android/app/src/main/AndroidManifest.xml.
Setting the namespace via the package attribute in the source AndroidManifest.xml is no longer supported.
Recommendation: remove package="com.jobfunders.app" from the source AndroidManifest.xml: /home/expo/workingdir/build/android/app/src/main/AndroidManifest.xml.

Anybody who might know a solution? Anything could help. Let me know if I need to share more details.

I've been looking for a solution for days and still haven't quite found anything. When i run gradlew locally to build, the app builds perfectly, so it must be either EAS, AGP or some other plugin or dependency i'm using that isn't compatible with something else.

But as you can see from the logging, the problem is that something somewhere adds "package=..." to the AndroidManifest file of the android build.

Right now in my app.json file i've got expo.android.package that declares my package name, and i've also got expo.plugins.expo-build-properties: android.namespace that also declares the same package. But i've tried removing the one and then the other and i've concluded that the namespace field can be left out without any problems and the package field is required by EAS in order to be able to build. But the issue still remains...

Extra context: React version: 18.3.1 Expo version: 52.0.46 (uses AGP version 8.6.0) React navigation version: 7+ Android compile & target SDK: 34

1
  • I was finaly able to make a development build, but the only way i could do it was by running npx expo prebuild --platform android --clean That generates a local android folder. In there, check if everything is correct. If it is, you can push that to git. Next time you run eas build, it will skip it's own preload because an android folder already exists. And with that build it does work and the build succeeds. So i'm guessing it's something that goes wrong with the prebuild function version on my app during eas build... But i still don't know how to fix it on Expo managed workflow. Commented May 6 at 12:36

0

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.