Add configuration option to specify arguments passed to expo start #991
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In one of the projects we heard the feedback from, they use
--scheme
option provided to expo start command. This is necessary for legacy reasons that they keep using expo this way.The
--scheme
option makes it so that expo bundler uses the provided scheme when generating app URLs that we use for launching the app when expo dev client is detected. We eventually want to avoid relying on launching dev clients via URL, but the necessary changes only landed in SDK 52 (expo/expo#33182), so for compatibility reasons we need to have a way for the schema to be customized on older versions (and until we add a way to launch dev client with extra arguments like proposed here expo/expo#33182)For the time being, the easiest workaround is to extend the launch configuration and give option to pass additional arguments to expo start. It doesn't appear like any other args really make sense to be added, yet giving more genering "args" option seem to require less explanation.
How Has This Been Tested:
--scheme something' as extra args in launch configuration. See that it wouldn't launch and in debug logs you'll see that the app tries to launch using
something://` scheme