React native change listening port
I know it is late but FYI, there is also another way where you can change your port permanently.
Go to your_app\node_modules\react-native\local-cli\server\server.js and change the port 8081 to 8088
which will be something like this
...
module.exports = {
name: 'start',
func: server,
description: 'starts the webserver',
options: [{
command: '--port [number]',
default: 8088,
parse: (val) => Number(val),
}
...
UPDATE TESTED ON RN 0.57:
1. If you are using custom metro config
const config = {
...
server: {
port: 8088,
}
...
};
2. And if you are not then,
Go to your_app\node_modules\react-native\local-cli\util\Config.js
const Config = {
...
server: {
port: process.env.RCT_METRO_PORT || 8088 //changed from 8081
}
...
}
Not sure if this is documented or not[1], you can specify the port via a CLI argument, like this:
react-native start --port 9988
I found it in the source code, and it worked on my local machine :)
https://github.com/facebook/react-native/blob/master/local-cli/server/server.js#L30
[1] This is now documented here: https://facebook.github.io/react-native/docs/troubleshooting#using-a-port-other-than-8081
The simplest solution is:
The below command will build Android or iOS package which will listen to port 1234
For iOS:
react-native run-ios --port=1234
For Android
react-native run-android --port=1234
If you are using metro-server then you can add port under server object like :
server:{
port:1234
}
or
run
react-native start --port=1234
Find out more configuration for metro-server here: https://facebook.github.io/metro/docs/en/configuration
But requires 0.55 and above.