react native - Expo dev client cannot connect to the dev server - Stack Overflow
Difference between Development client, Development build, Expo go
react native - Difference between expo-dev-client & npx expo prebuild & npx expo run:ios/android - Stack Overflow
First time user, dev-tools not starting on `npm start`
The dev-tools UI has been dropped in the new versioned CLI. If you use Expo SDK 45-46, it's just not there anymore. This deprecation was announced here: https://blog.expo.dev/sunsetting-the-web-ui-for-expo-cli-ab12936d2206
That being said, you should be able to do everything from the terminal as you (might have) used it before.
More on reddit.comDo I need coding experience to use Natively?
What backend features does Natively support?
What platforms does Natively support?
Videos
I'm about to start a new job and I'll be using React Native to develop mobile apps. Are companies actually using Expo for developing React Native apps? Like has it become a standard? Are there other ways like better alternatives to Expo? I've heard of React Native CLI, is it much better and standardized in the industry?
When you're first starting a new Expo project, you might reach for Expo Go because it's pre-built and will run a standard Expo-based app pretty easily. This can be the fastest option.
But once you're ready to:
- Modify any native code for your app
- Ask other people to test out the app on real devices
You should move over to expo dev client. Expo dev client will create basically a "custom" version of Expo Go, specifically for your app. It's a little more complicated than that, but that's a good way to think about it.
For most projects, you really shouldn't need expo prebuild. It's an escape hatch to make sure Expo users aren't totally locked in to Expo tools. The idea is you take your Expo project and use it as a source to generate the native code. It's what they'll do for you in the EAS build services. You can run it locally. I usually use it to troubleshoot EAS errors on my machine. I run it very infrequently.
Since expo prebuild will generate Android and iOS folders for you, in theory, you could use it kind of like you would with regular React Native CLI - to build all of the native components of your React Native app. But with Expo dev client, you basically never need this.
I do not agree with the characterization of Expo dev client as experimental. At one point that was true (when they were developing it!) but these days, it's a viable option, and it's the recommended path to take when doing Expo app development that touches native code.
Prebuild generates the ios/android folders and code, build actually produces an executable.
When building (either locally or via EAS) the prebuild phase is only run if iOS / Android folders are absent. Otherwise prebuild there would overwrite any customizations made to the native folders. But if there are no iOS / Android folders, prebuild is part of the build phase.
Also note that during prebuild, some customizations specified in app.json and package.json are applied to the native build. So, when developing your app, if you can avoid ever directly touching the native code, and just applying all customizations within app.json and package.json, you'll never need to worry about overwriting / maintaining native custom code. This workflow expo calls "continuous native generation".
If you were to make custom changes to the native code you could no longer use prebuild, and now you have a significant maintenance burden to tend to. But there's still one more option for avoiding this - config plugins... which allow you to apply further customizations to native code during the prebuild phase.