Closed H1B0B0 closed 3 weeks ago
Can you send me logs of your PREBUILD
build phase?
[PREBUILD] yarn run v1.22.21
[PREBUILD] $ /Users/$me/Documents/Trello-mobile-app/build/build/node_modules/.bin/expo prebuild --no-install --platform android
[PREBUILD] (node:24525) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
[PREBUILD] (Use `node --trace-deprecation ...` to show where the warning was created)
[PREBUILD] - Creating native directory (./android)
[PREBUILD] ✔ Created native directory
[PREBUILD] - Updating package.json
[PREBUILD] ✔ Updated package.json
[PREBUILD] - Running prebuild
[PREBUILD] ✔ Finished prebuild
[PREBUILD] Done in 3.52s.
[PREBUILD] Running "yarn install" in /Users/*********/Documents/Trello-mobile-app/build/build directory
[PREBUILD] yarn install v1.22.21
[PREBUILD] [1/4] Resolving packages...
[PREBUILD] success Already up-to-date.
[PREBUILD] Done in 0.16s.
Did you add some new libs by any chance before getting this error?
No, I have fixed the dependencies locally to match with Expo Doctor. I don't understand why I am still encountering this error.
Can you try to do https://docs.expo.dev/debugging/runtime-issues/#android-studio?
I have tried to build my app with Android Studio, but I keep encountering the same error with no additional information about it. I have this debug error, but I don't understand it. I have removed a problematic package, but nothing has changed.
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided.
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.3/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 3m 18s
607 actionable tasks: 591 executed, 16 up-to-date
Build operation 'Build finished for file system watching' started
Completing Build operation 'Build finished for file system watching'
Build operation 'Build finished for file system watching' completed
Releasing file lock for execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/expo-dev-launcher/expo-dev-launcher-gradle-plugin/.gradle/8.3/executionHistory)
Closing cache executionHistory.bin (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/expo-dev-launcher/expo-dev-launcher-gradle-plugin/.gradle/8.3/executionHistory/executionHistory.bin)
Releasing lock on execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/expo-dev-launcher/expo-dev-launcher-gradle-plugin/.gradle/8.3/executionHistory).
Releasing file lock for Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/expo-dev-launcher/expo-dev-launcher-gradle-plugin/.gradle/buildOutputCleanup)
Releasing lock on Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/expo-dev-launcher/expo-dev-launcher-gradle-plugin/.gradle/buildOutputCleanup).
Releasing file lock for execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@react-native/gradle-plugin/.gradle/8.3/executionHistory)
Closing cache executionHistory.bin (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@react-native/gradle-plugin/.gradle/8.3/executionHistory/executionHistory.bin)
Releasing lock on execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@react-native/gradle-plugin/.gradle/8.3/executionHistory).
Releasing file lock for Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@react-native/gradle-plugin/.gradle/buildOutputCleanup)
Releasing lock on Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@react-native/gradle-plugin/.gradle/buildOutputCleanup).
Releasing file lock for cache directory md-supplier (/Users/$$$$$$$$$$$$$/.gradle/caches/8.3/md-supplier)
Releasing lock on cache directory md-supplier (/Users/$$$$$$$$$$$$$/.gradle/caches/8.3/md-supplier).
Releasing file lock for execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/executionHistory)
Closing cache executionHistory.bin (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/executionHistory/executionHistory.bin)
Releasing lock on execution history cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/executionHistory).
Releasing file lock for Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/buildOutputCleanup)
Closing cache outputFiles.bin (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/buildOutputCleanup/outputFiles.bin)
Releasing lock on Build Output Cleanup Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/buildOutputCleanup).
Releasing file lock for cache directory md-rule (/Users/$$$$$$$$$$$$$/.gradle/caches/8.3/md-rule)
Releasing lock on cache directory md-rule (/Users/$$$$$$$$$$$$$/.gradle/caches/8.3/md-rule).
Resolution result cache closed. Cache reads: 0, disk reads: 0 (avg: 0.0 secs, total: 0.0 secs)
Resolution result cache closed. Cache reads: 1109, disk reads: 61 (avg: 0.0 secs, total: 0.031 secs)
Deleted 24 resolution results binary files in 0.007 secs
Completing Build operation 'Run build'
Build operation 'Run build' completed
Daemon worker Thread 2: released lock on worker lease
Stopping 0 deployment handles
Stopped deployment handles
Releasing file lock for checksums cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/checksums)
Releasing lock on checksums cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/checksums).
Releasing file lock for file hash cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/fileHashes)
Closing cache fileHashes.bin (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/fileHashes/fileHashes.bin)
Releasing lock on file hash cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/fileHashes).
VCS Checkout Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/vcs-1) has last been fully cleaned up 0 hours ago
Cache VCS Checkout Cache (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/vcs-1) was closed 0 times.
Cache VCS metadata (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/vcsMetadata) was closed 0 times.
Releasing file lock for dependencies-accessors (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/dependencies-accessors)
Releasing lock on dependencies-accessors (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/dependencies-accessors).
dependencies-accessors (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/.gradle/8.3/dependencies-accessors) has last been fully cleaned up 0 hours ago
The daemon has finished executing the build.
I have executed this command npx uri-scheme list
and i get this output, I don't understand why i get every time data@scheme error:
(base) **********@*****---*********** Trello-mobile-app % npx uri-scheme list
› iOS: Schemes for config: ./ios/Trellow/Info.plist
› trellow://
› com.hibobo.app://
› exp+trellow://
› Android: Schemes for config: ./android/app/src/main/AndroidManifest.xml
› trellow://
› trellow.hibobo.app://
› exp+trellow://
› trellow://
Okay The problem is on only android build ios is building successfully.
With the command npx expo run:android
(base) $$$$$$$$$$$$$@$$$$$$$$$$$$$---$$$$$$$$$$$$$ Trello-mobile-app % npx expo run:android
env: load .env
env: export TRELLO_API_KEY OPENAI_API_KEY
(node:61066) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
› Building app...
Configuration on demand is an incubating feature.
> Configure project :app
ℹ️ Applying gradle plugin 'expo-dev-launcher-gradle-plugin' (expo-dev-launcher@3.6.9)
ℹ️ Applying gradle plugin 'expo-updates-gradle-plugin' (expo-updates@0.24.12)
> Configure project :expo
Using expo modules
- expo-blur (12.9.2)
- expo-constants (15.4.6)
- expo-crypto (12.8.1)
- expo-dev-client (3.3.11)
- expo-dev-launcher (3.6.9)
- expo-dev-menu (4.5.8)
- expo-eas-client (0.11.2)
- expo-file-system (16.0.9)
- expo-font (11.10.3)
- expo-json-utils (0.12.3)
- expo-linear-gradient (12.7.2)
- expo-manifests (0.13.2)
- expo-modules-core$android-annotation (1.11.13)
- expo-modules-core (1.11.13)
- expo-modules-core$android-annotation-processor (1.11.13)
- expo-navigation-bar (2.8.1)
- expo-secure-store (12.8.1)
- expo-structured-headers (3.7.2)
- expo-system-ui (2.9.4)
- expo-updates (0.24.12)
- expo-web-browser (12.8.2)
> Configure project :react-native-reanimated
Android gradle plugin: 8.1.1
Gradle: 8.3
> Task :app:processDebugMainManifest FAILED
/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/app/src/debug/AndroidManifest.xml Error:
Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided.
See https://developer.android.com/r/studio-ui/build/manifest-merger for more information about the manifest merger.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:processDebugMainManifest'.
> Manifest merger failed : Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided.
* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.3/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 16s
191 actionable tasks: 56 executed, 135 from cache
Error: /Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/gradlew exited with non-zero code: 1
Error: /Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/android/gradlew exited with non-zero code: 1
at ChildProcess.completionListener (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@expo/cli/node_modules/@expo/spawn-async/build/spawnAsync.js:52:23)
at Object.onceWrapper (node:events:634:26)
at ChildProcess.emit (node:events:519:28)
at maybeClose (node:internal/child_process:1105:16)
at ChildProcess._handle.onexit (node:internal/child_process:305:5)
...
at Object.spawnAsync [as default] (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@expo/cli/node_modules/@expo/spawn-async/build/spawnAsync.js:17:21)
at spawnGradleAsync (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@expo/cli/build/src/start/platforms/android/gradle.js:72:46)
at Object.assembleAsync (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@expo/cli/build/src/start/platforms/android/gradle.js:52:18)
at runAndroidAsync (/Users/$$$$$$$$$$$$$/Documents/Trello-mobile-app/node_modules/@expo/cli/build/src/run/android/runAndroidAsync.js:36:24)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
With the command npx expo run:ios
....
....
....
› Build Succeeded
› 0 error(s), and 1 warning(s)
I have updated my Snack if you want.
Alright, I found the issue:
The problem stemmed from the fact that Expo hadn't added this code in the file app/build.gradle
:
manifestPlaceholders = [
'appAuthRedirectScheme': 'myappredirection'
]
And when I tried using Expo's build function, for some reason, it wasn't picking up my changes in the file. So, I opted to directly use the command ./gradlew assembleRelease
in the ./android
directory, and that worked. I think there might be a bug somewhere in the tool, but I couldn't pinpoint where. Sorry if anyone else encounters this issue. Follow the steps I described above and don't use the eas build -p android --local
function, but rather go directly with the gradlew
build function. Also, remember to do the prebuild step with Expo.
@szdziedzic Could this please be opened as a bug? We are having the same problem with android build in eas cli.
[RUN_GRADLEW] /tmp/vsts/eas-build-local-nodejs/20ff699b-328d-4d8d-b079-6d89dee3a62f/build/android/app/src/main/AndroidManifest.xml Error: [RUN_GRADLEW] Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided. [RUN_GRADLEW] > Task :app:mergeReleaseResources [RUN_GRADLEW] FAILURE: Build failed with an exception. [RUN_GRADLEW] * What went wrong: [RUN_GRADLEW] Execution failed for task ':app:processReleaseMainManifest'. [RUN_GRADLEW] > Manifest merger failed : Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided. [RUN_GRADLEW] * Try: [RUN_GRADLEW] > Run with --stacktrace option to get the stack trace. [RUN_GRADLEW] > Run with --info or --debug option to get more log output. [RUN_GRADLEW] > Run with --scan to get full insights. [RUN_GRADLEW] > Get more help at https://help.gradle.org./ [RUN_GRADLEW] BUILD FAILED in 15m 23s
As far as we can tell this is a problem with the manifest placeholder not being added in build.gradle at build time.
Hi, I am facing this error
while building from eas cli when did this happen?
What I tried?
Please HELP, Thanks in Advance
Hi, I am facing this error
while building from eas cli when did this happen?
After integrating keycloak auth
I dont have individual folders for ios and android everything gets build from eas
What I tried?
- Googling
- Asking in Discord
Please HELP, Thanks in Advance
https://github.com/expo/eas-cli/issues/2322#issuecomment-2066545820
@Naveen-g09 Look at my comment https://github.com/expo/eas-cli/issues/2322#issuecomment-2066545820 and try the solution :)
@Naveen-g09 Look at my comment #2322 (comment) and try the solution :)
@H1B0B0 This won't work for managed expo apps because we don't have access to the Android folder. Hence why this needs to be reopened as a bug please.
You can't try to build in local ?
Not when it comes to managing an enterprise level application where we need to manage a CI pipeline for multiple devs to contribute to. Build is done on a build server using the eas-cli pipeline, and then distributed to stores. Even building in local wouldn't get around the fact that a managed expo app doesnt' have an Android folder. It would require a pre-build step, which defeats the point of using managed flow with eas.
@Naveen-g09 Look at my comment #2322 (comment) and try the solution :)
@H1B0B0 This won't work for managed expo apps because we don't have access to the Android folder. Hence why this needs to be reopened as a bug please.
Yes. I can not extract out android, ios folder and I want to do it through eas build.
I don't have find any solutions for that. Sorry ):
@EvanBacon any help you can get us from expo?
This issue is also preventing me from building. This is a major problem for the managed workflow. Most people, as in my case, probably spent some time developing in the managed workflow and then when it's time to build, will be forced to eject to get around this issue.
In my case, I did the following to test:
package.json
and npm install
.I tried removing packages that I thought could be problematic, and building after removing each one, I could not find the one causing the issue before running out of free builds, and I am not confident enough to upgrade to the paid plan, if this service will not work as documented.
Any help on this would be much appreciated. Thanks.
{
"name": "myapp",
"version": "1.0.0",
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web"
},
"dependencies": {
"@expo/webpack-config": "^19.0.1",
"@fortawesome/fontawesome-svg-core": "^6.5.1",
"@fortawesome/free-solid-svg-icons": "^6.5.1",
"@fortawesome/react-native-fontawesome": "^0.3.0",
"@react-native-async-storage/async-storage": "1.21.0",
"@react-native-community/slider": "4.4.2",
"@react-native-picker/picker": "2.6.1",
"@react-navigation/native": "^6.1.17",
"@react-navigation/native-stack": "^6.9.26",
"@reduxjs/toolkit": "^2.2.2",
"axios": "^1.6.8",
"dotenv": "^16.4.5",
"expo": "~50.0.17",
"expo-auth-session": "~5.4.0",
"expo-av": "~13.10.6",
"expo-blur": "~12.9.2",
"expo-checkbox": "~2.7.0",
"expo-dev-client": "~3.3.11",
"expo-linking": "~6.2.2",
"expo-secure-store": "~12.8.1",
"expo-status-bar": "~1.11.1",
"expo-web-browser": "~12.8.2",
"jwt-decode": "^4.0.0",
"metro": "^0.80.8",
"metro-resolver": "^0.80.8",
"openai": "^4.29.2",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-native": "^0.73.6",
"react-native-app-auth": "^7.1.3",
"react-native-auth": "^1.4.2",
"react-native-deck-swiper": "^2.0.17",
"react-native-dotenv": "^3.4.11",
"react-native-gesture-handler": "~2.14.0",
"react-native-linking": "^0.0.0",
"react-native-qrcode-svg": "^6.3.0",
"react-native-reanimated": "~3.6.2",
"react-native-safe-area-context": "4.8.2",
"react-native-screens": "~3.29.0",
"react-native-track-player": "^4.1.1",
"react-native-url-polyfill": "^2.0.0",
"react-native-web": "~0.19.10",
"react-native-webview": "13.6.4",
"react-redux": "^9.1.0",
"spotify-web-api-js": "^1.5.2",
"tailwindcss-react-native": "^1.7.10"
},
"devDependencies": {
"@babel/core": "^7.24.3",
"tailwindcss": "^3.3.2"
},
"private": true
}
@JayOfemi hiii, check this: https://discordapp.com/channels/695411232856997968/1234906042526203954 hope this helps, happy coding!
Best workaround I've found so far was given from a member of the expo discord.
I used patch-project to create patch on the android build.gradle file which includes the required placeholder. Then when eas runs a build it applies the patch at build time.
steps:
This is however still just a workaround for a bug that needs to be investigated and fixed by Expo. I suggest leaving this ticket open until it is reassigned to a member of the team.
@Naveen-g09 & @dpuckett Thanks for suggesting this workaround. It does look promising.
@dpuckett I followed your instructions, but I get the below error when running npx patch-project --clean
. I have tried a few things such as running the command as Admin, and ensuring that I have full control of the android folder. Did you run into a similar issue by any chance?
Error: EPERM: operation not permitted, rename '...\myapp\android' -> '...\myapp\.patch-project-tmp\android\origin'
This issue is stale because it has been open for 30 days with no activity. If there is no activity in the next 7 days, the issue will be closed.
Don't close, this needs fixing! @EvanBacon
needs to be fixed
This issue is stale because it has been open for 30 days with no activity. If there is no activity in the next 7 days, the issue will be closed.
@expo-bot stop making this stale please.
^ atleast it listened to you
Came here to say the same problemo. @dpuckett your solution only seems to work for one build, then it fails in the EAS build process, do you know how to solve that?
^ atleast it listened to you
Came here to say the same problemo. @dpuckett your solution only seems to work for one build, then it fails in the EAS build process, do you know how to solve that?
I think it's a bug with patch-project. The get a similar problem, but if I refresh the patches it fixes the issue.
Hey guys, i found what is the error, npm uninstall react-native-app-auth, i had to uninstall auth library that makes a problem. It overwrites something or idk, there are some similar libaries with auth thing so check if you have them uninstall them. Also add scheme thing inside app.json "scheme": "com.loy365.ppmobileapp",
"intentFilters": [ { "autoVerify": true, "action": "VIEW", "data": [ { "scheme": "com.loy365.ppmobileapp", "host": "com.loy365.ppmobileapp" } ], "category": ["BROWSABLE", "DEFAULT"] } ] }, that is for android
This issue is stale because it has been open for 30 days with no activity. If there is no activity in the next 7 days, the issue will be closed.
This issue was closed because it has been inactive for 7 days since being marked as stale. Please open a new issue if you believe you are encountering a related problem.
Our team is hitting this issue as well. A commit that built successfully on EAS about 2 months ago is erroring out now.
When I run an EAS build with eas build --profile simulator --platform android
I get the error everyone else is getting:
/home/expo/workingdir/build/wholeyou-expo-router/android/app/src/debug/AndroidManifest.xml Error:
Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for <appAuthRedirectScheme> is provided.
What I did to get the build to work again:
npx expo install patch-project
npx expo prebuild
android/app/build.gradle
to add this inside of android.defaultConfig
:manifestPlaceholders = [
appAuthRedirectScheme: 'io.identityserver.demo'
]
npx patch-project --clean
/cng-patches
directory...and now the same EAS build command succeeds.
I do think this issue should be re-opened. Seems like something other people will hit that breaks EAS builds for some apps.
I'm getting the sense that this is originating from blank or incorrect auth provider url/domain origins not being handled correctly in the build process.
The build step may not now how to handle blank redirect URIs or callback domains for auth providers. I can't say more since I don't understand the Android build process well enough and have limited Java knowledge.
I ran into this issue only after installing Auth0
npm install react-native-auth0
I do think this should be re-opened, as @jayharr-is and @dpuckett have stated, as it seems to be an ongoing issue.
Build/Submit details page URL
No response
Summary
Hello, I have a build error that says: 'Manifest merger failed: Attribute data@scheme at AndroidManifest.xml requires a placeholder substitution but no value for is provided.' However, Expo doctor indicates no errors, and I can't seem to find where it might be coming from.
app.json
Managed or bare?
managed
Environment
Error output
No response
Reproducible demo or steps to reproduce from a blank project
https://snack.expo.dev/@hibobo/github.com-h1b0b0-trello-mobile-app