Comments (25)
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.
from eas-cli.
@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.
from eas-cli.
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.
from eas-cli.
@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.
from eas-cli.
I don't have find any solutions for that. Sorry ):
from eas-cli.
Can you send me logs of your PREBUILD
build phase?
from eas-cli.
[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.
from eas-cli.
Did you add some new libs by any chance before getting this error?
from eas-cli.
No, I have fixed the dependencies locally to match with Expo Doctor. I don't understand why I am still encountering this error.
from eas-cli.
Can you try to do https://docs.expo.dev/debugging/runtime-issues/#android-studio?
from eas-cli.
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.
from eas-cli.
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://
from eas-cli.
Okay The problem is on only android build ios is building successfully.
from eas-cli.
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' ([email protected])
ℹ️ Applying gradle plugin 'expo-updates-gradle-plugin' ([email protected])
> 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)
from eas-cli.
I have updated my Snack if you want.
from eas-cli.
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
from eas-cli.
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
from eas-cli.
@Naveen-g09 Look at my comment #2322 (comment) and try the solution :)
from eas-cli.
You can't try to build in local ?
from eas-cli.
@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.
from eas-cli.
@EvanBacon any help you can get us from expo?
from eas-cli.
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:
- Created a new react app in managed workflow with no changes
- Build - works
- Add the below dependencies to
package.json
andnpm install
. - Run to ensure app still works.
- Build - failed (same error described in this issue).
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
}
from eas-cli.
@JayOfemi hiii,
check this: https://discordapp.com/channels/695411232856997968/1234906042526203954
hope this helps,
happy coding!
from eas-cli.
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:
- yarn/npm expo install patch-project
- clean project first with yarn/npm expo prebuild --clean
- edit android/app/build.gradle. Follow instructions from this github ticket: https://github.com/FormidableLabs/react-native-app-auth?tab=readme-ov-file#android-setup
- run command: npx patch-project --clean (this will create the patch and then clean the project folders)
- commit patch to version control
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.
from eas-cli.
@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'
from eas-cli.
Related Issues (20)
- RangeError: Invalid array length on Array(width).join(' ') (@expo/xcpretty) HOT 3
- SSH connection to GitHub fails at Install dependencies HOT 2
- Need output of eas secret:list command in JSON format HOT 2
- Expo EAS device:create fails with error HOT 1
- Eas update stucked at the begining HOT 1
- EAS Cli is not recognized after installation HOT 4
- eas build faild with missing package.json
- Unable to make iOS build on MacOS HOT 2
- error: SHA-1 for file /var/folders... is not computed. HOT 15
- Could not read bundle identifier from Xcode project (target = XXXX, build configuration = Release). HOT 1
- React Navigate Drawer Button behaves differently when using eas build and eas update HOT 1
- eas build fails when using .yarnrc.yml that contains relative path to files HOT 1
- EAS build in CI fails with Husky and git v2.45.1 HOT 2
- eas submit error "Cannot read properties of undefined" HOT 8
- Running EAS Build with `--local` can't access EAS Secrets but also can't access `.env.local` HOT 2
- Build no longer working [Could not locate a valid AppDelegate at root] HOT 5
- [EAS Build] EAS Build should adhere to the package manager version set in package.json HOT 3
- Getting error: "Error: GraphQL request failed." while running "eas login" HOT 1
- Resign command doesn't filter builds by profile HOT 7
- Build request failed: Unexpected server error HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from eas-cli.