expo / eas-cli

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

EAS build swapping image files/no API requests being made (android) #2299

Closed samih-sghier closed 5 months ago

samih-sghier commented 7 months ago

Build/Submit details page URL

https://expo.dev/accounts/collegesouk/projects/souk/builds/ec0ca741-3f68-4829-a44d-ebfa413deb2d

Summary

Hi,

We are trying to release our expo managed app to the play store - everything on the simulator looks good. However, when we build the apk/aab files for submission using eas build. I've installed it on m easbuild simulator y device, we get weird behavior where image files are being swapped, http requests are not being made etc.. (see attached images)

We thought that the issue might be expo sdk 49 so we upgraded everything to expo sdk 50 and still the same issue.

Note: IOS build works perfectly locally, simulator, device and production. Our only issue is android

We don't even know how to debug this issue. This is what our package.json looks like:

{ "scripts": { "eas-build-pre-install": "npm config set legacy-peer-deps true", "start": "expo start --dev-client", "android": "expo run:android", "ios": "expo run:ios", "web": "expo start --web", "eject": "expo eject", "test": "jest --watchAll", "prestart": "react-native-dotenv" }, "jest": { "preset": "jest-expo" }, "dependencies": { "@eva-design/eva": "^2.2.0", "@expo/config-plugins": "~7.8.0", "@expo/vector-icons": "^14.0.0", "@flyerhq/react-native-chat-ui": "^1.4.3", "@react-native-async-storage/async-storage": "1.21.0", "@react-native-community/datetimepicker": "7.6.1", "@react-native-community/hooks": "^3.0.0", "@react-native-community/masked-view": "0.1.10", "@react-native-community/netinfo": "11.1.0", "@react-native-community/slider": "4.4.2", "@react-native-picker/picker": "2.6.1", "@react-navigation/bottom-tabs": "6.5.8", "@react-navigation/native": "~6.1.7", "@react-navigation/native-stack": "^6.9.14", "@react-navigation/stack": "~6.3.17", "@reduxjs/toolkit": "^1.9.5", "@rematch/core": "^2.2.0", "@rneui/base": "^4.0.0-rc.8", "@rneui/themed": "^4.0.0-rc.8", "@shopify/flash-list": "1.6.3", "@types/react-native": "^0.72.2", "@ui-kitten/components": "^5.3.1", "axios": "^1.5.0", "expo": "^50.0.14", "expo-asset": "~9.0.2", "expo-auth-session": "~4.0.3", "expo-blur": "~12.9.2", "expo-build-properties": "~0.11.1", "expo-constants": "~15.4.5", "expo-contacts": "^12.8.2", "expo-crypto": "~12.8.1", "expo-device": "~5.9.3", "expo-font": "~11.10.3", "expo-haptics": "~12.8.1", "expo-image": "~1.10.6", "expo-image-picker": "~14.7.1", "expo-linear-gradient": "~12.7.2", "expo-linking": "~6.2.2", "expo-localization": "~14.8.3", "expo-location": "~16.1.0", "expo-media-library": "^15.9.1", "expo-notifications": "~0.27.6", "expo-secure-store": "~12.8.1", "expo-sharing": "~11.10.0", "expo-splash-screen": "~0.26.4", "expo-status-bar": "~1.11.1", "expo-updates": "~0.24.12", "expo-web-browser": "~12.8.2", "formik": "^2.4.5", "lodash": "^4.17.21", "lottie-react-native": "6.5.1", "moment": "^2.29.4", "qs": "^6.11.2", "react": "18.2.0", "react-dom": "18.2.0", "react-native": "0.73.6", "react-native-gesture-handler": "~2.14.0", "react-native-image-pan-zoom": "^2.1.12", "react-native-keyboard-aware-scroll-view": "^0.9.5", "react-native-maps": "1.10.0", "react-native-modal-datetime-picker": "^17.1.0", "react-native-reanimated": "~3.6.2", "react-native-redash": "^18.1.0", "react-native-safe-area-context": "4.8.2", "react-native-screens": "~3.29.0", "react-native-svg": "14.1.0", "react-native-svg-uri": "^1.2.3", "react-native-web": "~0.19.6", "react-native-woodpicker": "^0.3.17", "react-query": "^3.39.3", "react-redux": "^8.1.2", "redux": "^4.2.1", "sectionlist": "^1.2.0", "socket.io-client": "^4.7.2", "use-debounce": "^9.0.4", "yup": "^1.3.2" }, "devDependencies": { "@babel/core": "^7.20.0", "@types/react": "~18.2.14", "@types/react-redux": "^7.1.26", "@typescript-eslint/eslint-plugin": "^6.7.0", "@typescript-eslint/parser": "^6.7.0", "eslint": "^8.49.0", "eslint-config-airbnb": "^19.0.4", "eslint-config-prettier": "^9.0.0", "eslint-plugin-import": "^2.28.1", "eslint-plugin-jsx-a11y": "^6.7.1", "eslint-plugin-prettier": "^5.0.0", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "husky": "^8.0.3", "jest-expo": "~50.0.4", "lint-staged": "^14.0.1", "prettier": "^3.0.3", "react-native-dotenv": "^3.4.9", "typescript": "^5.1.3" }, "private": true, "husky": { "hooks": { "pre-commit": "lint-staged" } }, "lint-staged": { "*.{ts,tsx}": "eslint" }, "name": "souk-app-new-ui", "version": "1.0.0" }

Managed or bare?

managed

Environment

expo-env-info 1.2.0 environment info: System: OS: macOS 14.4 Shell: 3.2.57 - /bin/bash Binaries: Node: 21.6.1 - /opt/homebrew/bin/node Yarn: 1.22.19 - /opt/homebrew/bin/yarn npm: 10.2.4 - /opt/homebrew/bin/npm 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.14 => 50.0.14 react: 18.2.0 => 18.2.0 react-dom: 18.2.0 => 18.2.0 react-native: 0.73.6 => 0.73.6 react-native-web: ~0.19.6 => 0.19.10 npmGlobalPackages: eas-cli: 7.6.0 expo-cli: 6.3.10 Expo Workflow: managed

✔ 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

Error output

No response

Reproducible demo or steps to reproduce from a blank project

eas build android platform

szdziedzic commented 7 months ago

Hi,

How do you control the API URL to which you do your requests? Is it env var? How do you set your env vars?

Noitham commented 6 months ago

I am having the same issue, even with builds done without the eas build I think it's more related to expo-updates, still need to look deeper into it. Have colleagues who have reported our app swapping image assets around, where the's supposed to be the Home icon, suddenly there's something else. So strange.

szdziedzic commented 6 months ago

If it's related to EAS Update I would guess something could go wrong with the env vars for you.

https://docs.expo.dev/eas-update/environment-variables/

But it's hard to guess with more info

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.

github-actions[bot] commented 5 months 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.