"Expo SDK requires Expo to run.." on fresh Ejected app

Hi !

I just ejected my app (because I need IAP) but i keep getting this error on my android physical device :

The expo sdk requires expo to run. it appears the native expo modules are unavailable

Since I have now a bare expo app aka normal react-native project (correct me if I’m wrong). Why do i still to worry about expo sdk ?

Can someone please explain me what is going on. Many thanks

PS: I have already tried to reinstall my node_modules

Env & deps
“expo”: “^34.0.3”
“react”: “16.8.3”
Node : v10.16.0
Expo : 3.0.8
Ubuntu 18.04.2 LTS

I’m facing the same exact issue. Can some please provide any insights as to how to fix this.

Thanks.

1 Like

Hi! Did you guys eject to Expokit, or to Bare? (it should have given you the choice after you ran expo eject)

Does it happen on a brand new expo ejected project, as well?

Make sure your configuration in app.json and package.json is correct, according to our release notes for sdk 34

I have been working on my expo project for a while now.
I upgraded to expo 34 first. Tested everything on expo client. And then I ejected to Bare.

As suggested in sdk 34 release note I set sdkVersion to "34.0.0" in app.json, “expo”: “^34.0.3” and “react-native”: “0.59.8” (I think I got this when I ejected to bare) in package.json

I upgraded to 34 from 33 & followed all the steps mentioned in the release notes, the app worked as expected after the upgrade. Then I ejected to Bare using “expo eject”.

@ctuser

I finally got rid of this by removing some expo imports as suggested here

FYI I had 2 expo imports :

  • Notifications ( import { Notifications } from ‘expo’ ) which is no more useful to me because i’m moving away from managed app :confused:
  • Google ( import { Google } from ‘expo’ )

PS: These 2 imports persist to expo-codemod, which btw is a great tool. Maybe I was warned about these but didn’t pay attention.

Hope it helps. Good luck

2 Likes

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