expo / eas-cli

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

after upgrade to SDK 49 App Crash on Production when i upload it on Google Play #2046

Open oussamanm opened 1 year ago

oussamanm commented 1 year ago

Build/Submit details page URL

https://expo.dev/accounts/oakoudad/projects/Biolens-App

Summary

the App was working fine, after i Upgrade to SDK 49, i test it on Android Studion emulator it worked fine, also in Expo go. => Expo doctor shows no Error

The Probelm is : After publishing new version of app on Google Play, the app Crash on oppening .

Managed or bare?

Managed

Environment

expo-env-info 1.0.5 environment info: System: OS: Windows 10 10.0.22621 Binaries: Node: 18.17.1 - C:\Program Files\nodejs\node.EXE Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD npm: 9.8.1 - C:\Program Files\nodejs\npm.CMD IDEs: Android Studio: AI-222.4459.24.2221.10121639 npmPackages: expo: ^49.0.0 => 49.0.9 react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.72.4 => 0.72.4 react-native-web: ~0.19.6 => 0.19.8 Expo Workflow: managed

**Expo Doctor output : **

WARNING: We recommend using PowerShell or Bash via WSL 2 for development with Expo CLI on Windows. You may encounter issues using cmd.exe.

✔ Check Expo config for common issues ✔ Check package.json for common issues ✔ Check dependencies for packages that should not be installed directly ✔ Check for common project setup issues ✔ Check npm/ yarn versions ✔ Check Expo config (app.json/ app.config.js) schema ✔ Check that native modules do not use incompatible support packages ✔ Check for legacy global CLI installed locally ✔ Check that packages match versions required by installed Expo SDK ✔ Check that native modules use compatible support package versions for 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

the project show no error, i will include here the Packages i'm using.

packages.json

{
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web",
    "eject": "expo eject"
  },
  "dependencies": {
    "@react-native-async-storage/async-storage": "1.18.2",
    "@react-native-community/datetimepicker": "7.2.0",
    "@react-native-community/masked-view": "^0.1.11",
    "@react-native-community/netinfo": "9.3.10",
    "@react-native-picker/picker": "2.4.10",
    "@react-navigation/bottom-tabs": "^6.5.4",
    "@react-navigation/drawer": "^6.5.8",
    "@react-navigation/material-top-tabs": "^6.5.3",
    "@react-navigation/native": "^6.1.3",
    "@react-navigation/native-stack": "^6.7.0",
    "axios": "^0.24.0",
    "deprecated-react-native-prop-types": "^2.3.0",
    "expo": "^49.0.0",
    "expo-camera": "~13.4.2",
    "expo-checkbox": "~2.4.0",
    "expo-dev-client": "~2.4.8",
    "expo-device": "~5.4.0",
    "expo-document-picker": "~11.5.4",
    "expo-image-picker": "~14.3.2",
    "expo-media-library": "~15.4.1",
    "expo-notifications": "~0.20.1",
    "expo-status-bar": "~1.6.0",
    "expo-updates": "~0.18.12",
    "form-data": "^4.0.0",
    "graphql": "^16.8.0",
    "lodash.filter": "^4.6.0",
    "moment": "^2.29.1",
    "react": "18.2.0",
    "react-dom": "18.2.0",
    "react-native": "0.72.4",
    "react-native-gesture-handler": "~2.12.0",
    "react-native-gifted-chat": "^0.16.3",
    "react-native-modal": "^13.0.1",
    "react-native-pager-view": "6.2.0",
    "react-native-reanimated": "~3.3.0",
    "react-native-safe-area-context": "4.6.3",
    "react-native-screens": "~3.22.0",
    "react-native-simple-radio-button": "^2.7.4",
    "react-native-tab-view": "^3.3.4",
    "react-native-web": "~0.19.6"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9"
  },
  "private": true,
  "name": "biolens",
  "version": "1.0.0"
}

Eas.json

{
  "cli": {
    "version": ">= 0.52.0"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal"
    },
    "preview": {
      "distribution": "internal",
      "android": {
        "buildType": "apk"
      }
    },
    "production": {
      "android": {
      }
    }
  },
  "submit": {
    "production": {
    }
  }
}
oussamanm commented 1 year ago

On the Expo build dashboard you will see on last build log this Error :

[stderr] 
Some dependencies are incompatible with the installed expo version:
[stderr] 
  @react-native-community/datetimepicker@7.5.0 - expected version: 7.2.0
[stderr] 
Your project may not work correctly until you install the correct versions of the packages.
[stderr] 
Fix with: npx expo install --fix
[stderr] 
Found outdated dependencies
[stderr] 
One or more checks failed, indicating possible issues with the project.
Advice: Use 'npx expo install --check' to review and upgrade your dependencies.
Command "expo doctor" failed.
npx -y expo-doctor exited with non-zero code: 1

The Problem still occure Even After i changed the dependencie @react-native-community/datetimepicker version.

you can check the Build with id "1d389109-d3af-4d31-99ed-fd69d6ab21f6" done in Sep 5, 2023 2:57 AM , it has no Error

pcatano-fc commented 1 year ago

Build/Submit details page URL

https://expo.dev/accounts/oakoudad/projects/Biolens-App

Summary

the App was working fine, after i Upgrade to SDK 49, i test it on Android Studion emulator it worked fine, also in Expo go. => Expo doctor shows no Error

The Probelm is : After publishing new version of app on Google Play, the app Crash on oppening .

Managed or bare?

Managed

Environment

expo-env-info 1.0.5 environment info: System: OS: Windows 10 10.0.22621 Binaries: Node: 18.17.1 - C:\Program Files\nodejs\node.EXE Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD npm: 9.8.1 - C:\Program Files\nodejs\npm.CMD IDEs: Android Studio: AI-222.4459.24.2221.10121639 npmPackages: expo: ^49.0.0 => 49.0.9 react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.72.4 => 0.72.4 react-native-web: ~0.19.6 => 0.19.8 Expo Workflow: managed

**Expo Doctor output : **

WARNING: We recommend using PowerShell or Bash via WSL 2 for development with Expo CLI on Windows. You may encounter issues using cmd.exe.

✔ Check Expo config for common issues ✔ Check package.json for common issues ✔ Check dependencies for packages that should not be installed directly ✔ Check for common project setup issues ✔ Check npm/ yarn versions ✔ Check Expo config (app.json/ app.config.js) schema ✔ Check that native modules do not use incompatible support packages ✔ Check for legacy global CLI installed locally ✔ Check that packages match versions required by installed Expo SDK ✔ Check that native modules use compatible support package versions for 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

the project show no error, i will include here the Packages i'm using.

packages.json

{
  "scripts": {
    "start": "expo start --dev-client",
    "android": "expo run:android",
    "ios": "expo run:ios",
    "web": "expo start --web",
    "eject": "expo eject"
  },
  "dependencies": {
    "@react-native-async-storage/async-storage": "1.18.2",
    "@react-native-community/datetimepicker": "7.2.0",
    "@react-native-community/masked-view": "^0.1.11",
    "@react-native-community/netinfo": "9.3.10",
    "@react-native-picker/picker": "2.4.10",
    "@react-navigation/bottom-tabs": "^6.5.4",
    "@react-navigation/drawer": "^6.5.8",
    "@react-navigation/material-top-tabs": "^6.5.3",
    "@react-navigation/native": "^6.1.3",
    "@react-navigation/native-stack": "^6.7.0",
    "axios": "^0.24.0",
    "deprecated-react-native-prop-types": "^2.3.0",
    "expo": "^49.0.0",
    "expo-camera": "~13.4.2",
    "expo-checkbox": "~2.4.0",
    "expo-dev-client": "~2.4.8",
    "expo-device": "~5.4.0",
    "expo-document-picker": "~11.5.4",
    "expo-image-picker": "~14.3.2",
    "expo-media-library": "~15.4.1",
    "expo-notifications": "~0.20.1",
    "expo-status-bar": "~1.6.0",
    "expo-updates": "~0.18.12",
    "form-data": "^4.0.0",
    "graphql": "^16.8.0",
    "lodash.filter": "^4.6.0",
    "moment": "^2.29.1",
    "react": "18.2.0",
    "react-dom": "18.2.0",
    "react-native": "0.72.4",
    "react-native-gesture-handler": "~2.12.0",
    "react-native-gifted-chat": "^0.16.3",
    "react-native-modal": "^13.0.1",
    "react-native-pager-view": "6.2.0",
    "react-native-reanimated": "~3.3.0",
    "react-native-safe-area-context": "4.6.3",
    "react-native-screens": "~3.22.0",
    "react-native-simple-radio-button": "^2.7.4",
    "react-native-tab-view": "^3.3.4",
    "react-native-web": "~0.19.6"
  },
  "devDependencies": {
    "@babel/core": "^7.12.9"
  },
  "private": true,
  "name": "biolens",
  "version": "1.0.0"
}

Eas.json

{
  "cli": {
    "version": ">= 0.52.0"
  },
  "build": {
    "development": {
      "developmentClient": true,
      "distribution": "internal"
    },
    "preview": {
      "distribution": "internal",
      "android": {
        "buildType": "apk"
      }
    },
    "production": {
      "android": {
      }
    }
  },
  "submit": {
    "production": {
    }
  }
}

Hi, have you managed to debug with USB debugging? We have a very similar case and our error message is java.lang.AssertionError: The embedded manifest is invalid or could not be read. Make sure you have configured expo-updates correctly in android/app/build.gradle

oussamanm commented 1 year ago

no i didn't try to debug with USB, also i'm Expo, i dont have android/app/build.gradle

oussamanm commented 1 year ago

this Problem really took me many days. the big problem is i dont get an Error or just warning about where the problem could be.

I had to Downgrade to SDK 48 to make it Work, that prove that there's a problem while using SDK 49

wab030 commented 1 year ago

I faced the same problem.

szdziedzic commented 1 year ago

Hi,

Here are some docs that might help you with debugging this issue: https://docs.expo.dev/debugging/runtime-issues/#production-errors. I think that in your case it might be worth seeing logs in the logcat. It might give you some useful insights about the problem you face because, without any more information, it's hard to know what's going on.

If the issue you face is related to expo-updates can you try to verify if you have them configured the same way as recommended in the docs? These issues are sometimes related to the invalid configuration in the app config. https://docs.expo.dev/versions/latest/sdk/updates/ https://docs.expo.dev/bare/installing-updates/

rollemira commented 11 months ago

I'm also experiencing this issue. We want SDK version 49 because it really pulls together the development and release loop. Inevitably we had to revert to SDK 48.

tsafadi commented 11 months ago

SDK 49 does not work for me either. I had to downgrade to SDK 48. It somehow works in development mode with expo start but does not work when building it with eas. I will be happy to help with this issue and provide more information if needed.

tech-satguru commented 11 months ago

Thanks

SDK 49 does not work for me either. I had to downgrade to SDK 48. It somehow works in development mode with expo start but does not work when building it with eas. I will be happy to help with this issue and provide more information if needed.

Thank you for your solution it's quite helpful to me. i am searching the solution from two days

marlonjohnynion commented 11 months ago

We have the same issue as well. SDK 49 crashes when built using GH actions (eas --local) but when it's built using EAS servers, the app does NOT crash. Hopefully, someone can verify my comment, and see if it doesn't crash when you build through EAS servers??

MOUTAIROU commented 10 months ago

I have had the same problem for 5 days. When I create a new project and I switch to production mode. App does not work I think the solution is to upgrade to SDK 48

nickbuc1 commented 10 months ago

We have had the same problems. After switching to 49, the app works on the simulator but not in production. We will try to downgrade to 48.

jfcbxp commented 10 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

mmartin313 commented 10 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

This also worked for me. I was having this issue on iOS. Thanks.

Tpleme commented 10 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

This solved my issue. App was crashing on startup and now is not. This is using expo 49

JWesorick commented 10 months ago

I am having this issue. Proposed solutions are not working.

kellylsmith commented 8 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem. observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

This also worked for me. I was having this issue on iOS. Thanks.

I was having the issue with ios testflight. This worked perfectly. Thank you I was lost without it.

NRHunsdale commented 8 months ago

this Problem really took me many days. the big problem is i dont get an Error or just warning about where the problem could be.

I had to Downgrade to SDK 48 to make it Work, that prove that there's a problem while using SDK 49

I've also had to employ this strategy for Android.

The dev build works as expected; it's only when a production build is performed that a crash without error or stack trace occurs

yudijohn commented 8 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

This sollution works for me, SKD 49 crashed when running on production mode and TestFlight.

milch-shake commented 7 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

how to remove?

RS-Roshi commented 6 months ago

Facing the same issue, It is happening in version 50 as well.

lucy2329 commented 6 months ago

Facing the same issue on IOS. No fix has worked yet

matagaralph commented 5 months ago

Expo used to work well perfectly back in the days tried using it for our application it didn't work. Application was stuck on splashscreen despite we're using official recommendations from the docs. I love the React Native ecosystem but we're pushed at this point to use Flutter.

VolkerLieber commented 5 months ago

Try to look into the system logs from the crash (e.g. with Android Studio). In my case it happened because Expo update restarted the App which let the SplashScreen.hideAsync() function fail with an error. A simple try-catch around it fixed the issue for me.

jocanola commented 3 months ago

I removed the "react-native-reanimated": "~3.3.0",dependency and it solved my problem.

observation: the build eas development works without problems with the dependency, however the build eas internal preview(apk) crashes

You may not remove it, if you're using it in your project you just have to add react-native-reanimated/plugin to the babel plugin and must come last in the plugins, you can check the docs

The solution that works for me is to add react-native-reanimated/plugin to the babel plugins and must come last in the plugins