expo / eas-cli

Fastest way to build, submit, and update iOS and Android apps
https://docs.expo.dev/eas/
MIT License
831 stars 85 forks source link

Error at :app:processReleaseMainManifest when I try to build my app. #2322

Closed H1B0B0 closed 3 weeks ago

H1B0B0 commented 7 months ago

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

{
  "expo": {
    "name": "Trellow",
    "scheme": "trellow",
    "slug": "Trellow",
    "version": "1.0.0",
    "orientation": "portrait",
    "icon": "./assets/icon-light.png",
    "userInterfaceStyle": "automatic",
    "splash": {
      "image": "./assets/splash.png",
      "resizeMode": "contain",
      "backgroundColor": "#ffffff"
    },
    "assetBundlePatterns": ["**/*"],
    "web": {
      "favicon": "./assets/favicon.png"
    },
    "android": {
      "adaptiveIcon": {
        "foregroundImage": "./assets/icon-light.png",
        "backgroundColor": "#FFFFFF"
      },
      "package": "**************"
    },
    "extra": {
      "eas": {
        "projectId": "**************************"
      }
    },
    "ios": {
      "bundleIdentifier": "**********"
    }
  }
}
[RUN_GRADLEW] > Task :react-native-webview:processReleaseManifest
[RUN_GRADLEW] > Task :expo:compileReleaseLibraryResources
[RUN_GRADLEW] > Task :app:mergeReleaseResources
[RUN_GRADLEW] > Task :app:processReleaseMainManifest FAILED
[RUN_GRADLEW] See https://developer.android.com/r/studio-ui/build/manifest-merger for more information about the manifest merger.
[RUN_GRADLEW] Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
[RUN_GRADLEW] You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
[RUN_GRADLEW] 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.
[RUN_GRADLEW] /Users/etiennementrel/Documents/Trello-mobile-app/build/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] 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 27s
[RUN_GRADLEW] 138 actionable tasks: 138 executed
[RUN_GRADLEW] Error: Gradle build failed with unknown error. See logs for the "Run gradlew" phase for more information.

Managed or bare?

managed

Environment

  expo-env-info 1.2.0 environment info:
    System:
      OS: macOS 14.2.1
      Shell: 5.9 - /bin/zsh
    Binaries:
      Node: 21.6.0 - /usr/local/bin/node
      Yarn: 1.22.21 - /opt/homebrew/bin/yarn
      npm: 10.3.0 - /usr/local/bin/npm
    Managers:
      CocoaPods: 1.15.2 - /opt/homebrew/bin/pod
    SDKs:
      iOS SDK:
        Platforms: DriverKit 23.2, iOS 17.2, macOS 14.2, tvOS 17.2, visionOS 1.0, watchOS 10.2
    IDEs:
      Android Studio: 2023.2 AI-232.10300.40.2321.11567975
      Xcode: 15.2/15C500b - /usr/bin/xcodebuild
    npmPackages:
      expo: ^50.0.15 => 50.0.15 
      react: 18.2.0 => 18.2.0 
      react-native: 0.73.6 => 0.73.6 
    npmGlobalPackages:
      eas-cli: 7.8.1
      expo-cli: 6.3.10
    Expo Workflow: managed
(node:26695) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a u
serland alternative instead.                                                                  (Use `node --trace-deprecation ...` to show where the warning was created)
✔ Check Expo config for common issues
✔ Check package.json for common issues
✔ Check native tooling versions
✔ Check dependencies for packages that should not be installed directly
✔ Check for common project setup issues
✔ Check npm/ yarn versions
✔ Check for issues with metro config
✔ Check Expo config (app.json/ app.config.js) schema
✔ Check for legacy global CLI installed locally
✔ Check that native modules do not use incompatible support packages
✔ Check that native modules use compatible support package versions for installed Expo SDK
✔ Check that packages match versions required by installed Expo SDK

Didn't find any issues with the project!

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

szdziedzic commented 7 months ago

Can you send me logs of your PREBUILD build phase?

H1B0B0 commented 7 months ago
[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.
szdziedzic commented 7 months ago

Did you add some new libs by any chance before getting this error?

H1B0B0 commented 7 months ago

No, I have fixed the dependencies locally to match with Expo Doctor. I don't understand why I am still encountering this error.

szdziedzic commented 7 months ago

Can you try to do https://docs.expo.dev/debugging/runtime-issues/#android-studio?

H1B0B0 commented 7 months ago

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.
H1B0B0 commented 6 months ago

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://
H1B0B0 commented 6 months ago

Okay The problem is on only android build ios is building successfully.

H1B0B0 commented 6 months ago

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)
H1B0B0 commented 6 months ago

I have updated my Snack if you want.

H1B0B0 commented 6 months ago

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 ./androiddirectory, 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.

dpuckett commented 6 months ago

@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.

Naveen-g09 commented 6 months ago

Hi, I am facing this error Screenshot from 2024-05-01 22-50-48

while building from eas cli when did this happen?



What I tried?

H1B0B0 commented 6 months ago

Hi, I am facing this error Screenshot from 2024-05-01 22-50-48

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

H1B0B0 commented 6 months ago

@Naveen-g09 Look at my comment https://github.com/expo/eas-cli/issues/2322#issuecomment-2066545820 and try the solution :)

dpuckett commented 6 months ago

@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.

H1B0B0 commented 6 months ago

You can't try to build in local ?

dpuckett commented 6 months ago

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 commented 6 months ago

@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.

H1B0B0 commented 6 months ago

I don't have find any solutions for that. Sorry ):

Naveen-g09 commented 6 months ago

@EvanBacon any help you can get us from expo?

JayOfemi commented 6 months ago

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:

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
}
Naveen-g09 commented 6 months ago

@JayOfemi hiii, check this: https://discordapp.com/channels/695411232856997968/1234906042526203954 hope this helps, happy coding!

dpuckett commented 6 months ago

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.

JayOfemi commented 6 months ago

@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'

github-actions[bot] commented 5 months ago

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.

dpuckett commented 5 months ago

Don't close, this needs fixing! @EvanBacon

Naveen-g09 commented 4 months ago

needs to be fixed

github-actions[bot] commented 3 months ago

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.

dpuckett commented 3 months ago

@expo-bot stop making this stale please.

0xPT commented 3 months ago

^ 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?

dpuckett commented 2 months ago

^ 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.

benedettix commented 2 months ago

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

github-actions[bot] commented 1 month ago

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.

github-actions[bot] commented 3 weeks ago

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.

jayharr-is commented 2 weeks ago

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:

manifestPlaceholders = [
    appAuthRedirectScheme: 'io.identityserver.demo'
]

...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.

swimnz commented 1 day ago

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.