Browser-sync in mobile while local development
When you run gulp in your terminal you should see :
[BS] Access URLs:
--------------------------------------
Local: http://localhost:3000
External: http://192.168.10.81:3000
--------------------------------------
UI: http://localhost:3001
UI External: http://192.168.10.81:3001
What it means is that your local URL is localhost at port 3000. For external users it will be the external IP [ not the UI one ]. To access from your phone you need to enter the External IP along with its port in your phone's browser.
You can view all your browser-sync settings by visiting the UI IP.
Note : For the external link to work on your phone, your phone and computer should be on the same Wi-Fi Network, only then it will work.
I know this is old, but the above option didn't work for me, and I'm running windows 10. I eventually found a solution using the tunnel
option which is completely hassle-free.
For instance, setting as an option tunnel: true will generate a random public URL each time you run BrowserSync: e.g. http://randomstring23232.localtunnel.me
However, you can set a preferred tunnel name by passing it as a string to the tunnel option, i.e.
tunnel: 'preferredtunnelname',
which will reproduce: https://preferredtunnelname.localtunnel.me
References here: https://github.com/BrowserSync/browser-sync/issues/390 and https://browsersync.io/docs/options/#option-tunnel
Thanks to @Kwesi for sharing above. In my case, setting tunnel:true alone didn't work until I also added online:true. Here's my sample code - worked fine on both computer and mobile device.
browserSync.init({
server: {
baseDir: "app"
},
online: true,
tunnel: true,
logLevel: "debug"
});