Crash loop on the splash screen

Hi Expo team!
I’ve recently upgraded my unejected project to SDK 33. After building it using expo ba android devices crash on the splash screen, then reboot, then keep doing it in the loop indefinitely, though it worked fine on SDK 30.

My notes so far after debugging it:

  • iOS build via expo bi works perfectly fine
  • ADB logcat shows this log for every crash
E/GraphResponse: {HttpStatus: 400, errorCode: 100, subErrorCode: 33, errorType: GraphMethodException, errorMessage: Unsupported get request. Please read the Graph API documentation at}
E/ReactNativeJS: undefined is not an object (evaluating 'S.Type')
E/ReactNativeJS: Application main has not been registered.
    Hint: This error often happens when you're running the packager (local dev server) from a wrong folder. For example you have multiple apps and the packager is still running for the app you were working on before.
    If this is the case, simply kill the old packager instance (e.g. close the packager terminal window) and start the packager in the correct app folder (e.g. cd into app folder and run 'npm start').
    This error can also happen due to a require() error during initialization or failure to call AppRegistry.registerComponent.
  • ejected app compiled using Android Studio works fine on both debug and release builds
  • all android build logs on contain this line
Could not find google-services.json while looking in [src/nullnull/release, src/release/nullnull, src/nullnull, src/release, src/nullnullRelease]

I think it’s all somehow connected. Could you please help me with that problem?

Hey @keystone, have you followed up with that error message and confirmed that your path to the google-services.json file in app.json is correct?

Hey @charliecruzan, yes I can confirm that the path is valid - it hasn’t been changed even slightly during the upgrade (as well as the content of the file), and worked well on SDK 30.

Apparently, it is fixed. The root cause - I was trying to use new SDK without publishing JS for this SDK first, and run builds using --no-publish flag. expo publish did the thing for me.

1 Like

Awesome! Glad to hear it’s working