Why my project became bare workflow? I didn't do expo eject

Hi.
I didn’t do for a long time expo build:android, and was developing with web and expo go in android – in both app is working.
When today I run expo build:android I got a warning:
expo build:android currently only supports managed workflow apps.

Why? I didn’t do expo eject. Here on forum I found similar questions, and there is a solution - create new project expo init and move there your code. I tried, but even when I move only my dependencies from package.json, workflow became bare:

"dependencies": {
		"@react-native-async-storage/async-storage": "^1.13.4",
		"@react-native-community/masked-view": "0.1.10",
		"@react-native-community/slider": "^3.0.3",
		"@react-navigation/drawer": "^5.9.2",
		"@react-navigation/native": "^5.7.5",
		"@react-navigation/stack": "^5.9.2",
		"expo": "^40.0.0",
		"expo-app-loading": "^1.0.1",
		"expo-av": "~8.7.0",
		"expo-font": "~8.4.0",
		"expo-splash-screen": "~0.8.1",
		"expo-status-bar": "~1.0.3",
		"expo-updates": "~0.4.1",
		"mitt": "^2.1.0",
		"random-js": "^2.1.0",
		"react": "16.13.1",
		"react-dom": "16.13.1",
		"react-native": "0.63.4",
		"react-native-elements": "^3.0.1",
		"react-native-gesture-handler": "~1.8.0",
		"react-native-reanimated": "~1.13.0",
		"react-native-render-html": "^6.0.0-alpha.17",
		"react-native-safe-area-context": "3.1.9",
		"react-native-screens": "~2.15.0",
		"react-native-unimodules": "~0.12.0",
		"react-native-web": "~0.13.12",
		"react-native-webview": "11.0.0",
		"react-redux": "^7.2.1",
		"redux": "^4.0.5"
	},

After the build, I download the apk from expo, install it. But it doesn’t work :frowning: While opening like white flash and then app disapears.

Please provide me with some advices.

Expo diagnostics:

  Expo CLI 4.2.1 environment info:
    System:
      OS: Linux 5.8 Ubuntu 20.04.2 LTS (Focal Fossa)
      Shell: 5.0.17 - /bin/bash
    Binaries:
      Node: 14.15.2 - /usr/local/bin/node
      Yarn: 1.22.5 - /usr/bin/yarn
      npm: 7.5.6 - /usr/local/bin/npm
    npmPackages:
      expo: ^40.0.0 => 40.0.1 
      react: 16.13.1 => 16.13.1 
      react-dom: 16.13.1 => 16.13.1 
      react-native: 0.63.4 => 0.63.4 
      react-native-web: ~0.13.12 => 0.13.18 
    npmGlobalPackages:
      expo-cli: 4.2.1
    Expo Workflow: bare

May be for someone will help how I solved this problem :slight_smile:
I removed all extra dependencies (which had added I, not expo init). And then installed them all one by one with expo install package-name, and after each install I run expo build:android for get status of workflow, is it managed or bare. Until line 25 it was managed. And on react-native-unimodules it became bare. In the console appeared a yellow warning, that I am running build with bare workflow. I didn’t remember how this dependency get in to my app :smiley: I suppose I was fighting with some issue and tried everything I found in net… When I removed it, workflow turned to managed, and nothing bad happened. Everything works in web and expo-go. Yellow warning disappeared, and while building app I have seen: workflow status: managed.

But my apk still crashed while running on phone after install… I have some errors in browser console, caused by code try{} catch(err){}, when I changed this code to conditional chaining like: this.?translation?.[trLang].?content apk began to work.

Also, I returned to their initial places all files from assets folder like favicon, splash-screen, icon etc, and links to them in app.json. Maybe this made effect. I don’t know honestly.

It was a hard experimental work with some stress, but at the end I’m happy :heart:

1 Like

sorry for the hassle! indeed, react-native-unimodules is only used in bare apps so we use it as a heuristic to determine what workflow you’re using.

we check:

  • does an ios directory exist?
  • does an android directory exist?
  • does the project have react-native-unimodules installed?
1 Like

it became increasingly clear that we want an end-to-end experience around customizing your Expo app with native code.

we’re working on it :slight_smile: https://blog.expo.io/expo-application-services-eas-build-and-submit-fc1d1476aa2e

There’s already early support for Expo managed apps in EAS Build in the preview, but it’s not quite ready for production yet. There’s also a big missing piece: how do you get a new version of your Expo development client app that includes your bespoke native runtime? We’re working on this, and we’ll have answers for you in the coming months.

we expect to have something people can try out by q3 2021

Just try to solve it again . it will definitely work.

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.