Expo react native physical device run on localhost - expo

I just expo init a project and start it, then scan QR code lan connection on dev tool with my physical device on Expo Go but it not working. I realise that expo go app running 127.0.0.1 instead of pc ip. How can I fix it ?
Waiting on exp://127.0.0.1:19000
// It must be like this Waiting on exp://192.168.1.10:19000
› Scan the QR code above with Expo Go (Android) or the Camera app (iOS)
› Press a │ open Android
› Press w │ open web
› Press r │ reload app
› Press m │ toggle menu in Expo Go
› Press d │ show developer tools
› shift+d │ toggle auto opening developer tools on startup (disabled)
› Press ? │ show all commands
Logs for your project will appear below. Press Ctrl+C to exit.```

I solve my problem by using a QR code generator and type exp://[MY_LAN_IP]:19000 instead of exp://127.0.0.1:19000 then scan it.
I don't think my solution is an orthodox method, but better physical than using the emulator

After expo start you should see output like this
› Waiting on exp://192.168.100.74:19000
› Scan the QR code above with Expo Go (Android) or the Camera app (iOS)
› Press a │ open Android
› Press w │ open web
› Press r │ reload app
› Press m │ toggle menu in Expo Go
› Press d │ show developer tools
› shift+d │ toggle auto opening developer tools on startup (disabled)
› Press ? │ show all commands
Logs for your project will appear below. Press Ctrl+C to exit.
As you can see in the 1st line it says Waiting on exp://192.168.100.74:19000
Now make sure your PC and your mobile are connected to the same Network.
Then in your Expo Go App scan the QR code and Done..
And Also if your are logged in both Expo GO App and the laptop/PC in which you are developing then you should see your Project in Recently in Development section.
I would suggest you to log in both devices..
For PC:
type expo login in terminal in your project folder
Type the credentials and log in.
For Mobile:
Sign in to your expo account in the Profile Tab.

Related

can't read extras from expo `app.config.js` if metro server is runned first

I have some key values in extra (app.config.js) of expoJS.
example:
extra: {
someKey: "someValue",
},
when I'm running expo run:ios everything is working, but if I run expo start --dev-client and then press i to run ios emulator I can't get extra's. that's how I'm trying to get them: Constants.manifest?.extra?.API_URL (once again, everything is working fine if I'll do expo run:ios directly.)
expo version: "expo": "~46.0.9"
expo CLI version: 6.0.5
What I'm missing?
P.S. I need this because my physical phone is not able to connect to metro and I'm building an app into the phone first and then starting the metro server.

Expo sending OTA updates

I had no idea Expo did this.. But I created a small office application and working on an update. While working on the update, I did
expo publish
So that the team I'm working with could use Expo and see the route I'm going. And it updated the production app throughout the company.
in my App.json file
"updates": {
"enabled": false,
"checkAutomatically": "ON_LOAD",
"fallbackToCacheTimeout": 0
},
I want to still be able to publish the app, without it updating the production app.
how do I do that when I publish?
Check out Expo release channels.
When you build your standalone apps to iOS or Android it binds that build to whatever release channel was specified. It is set to default channel by default.
You can build your apps to a specific channel by running:
expo build:ios --release-channel <your-channel>
expo build:android --release-channel <your-channel>
Then, when you want to publish to that release channel you do so by running:
expo publish --release-channel <your-channel>

Degugging a react native / expo app with webstorm

I can't debug my react native / expo app in WebStorm, but I can in Visual Studio Code.
I have a react native app that I can successfully run using expo. I set up the configuration according to the info on this site:
https://blog.jetbrains.com/webstorm/2018/02/webstorm-2018-1-eap-181-3263/#debugging-expo
When I click "run" or "debug" and "Debug JS Remotely" is turned off, the bundler builds a JS bundle and the app starts on my devices.
But once I turn on "Debug JS Remotely", the bundler only says:
Starting custom debugger by executing: : [my working directory] [my working directory again]
and never goes on to build the JS bundle.
After a short while, a red screen appears on the device, and it says:
Unable to connect with remote debugger
Timeout while connecting to remote debugger
onFailure
DevSupportManagerImpl.java:851
onFailure
WebsocketJavaScriptExecutor.java:83
run
WebsocketJavaScriptExecutor.java:142
handleCallback
Handler.java:790
dispatchMessage
Handler.java:99
...
The bundler doesn't say anything more than the message above.
As soon as I turn off remote debugging, the the bundler starts building again and finishes with
"Building JavaScript bundle: finished in ...ms"
as usual, but the device, again, shows the red screen with aforementioned messages, or doesn't show anything but the regular white screen with a message at the bottom saying "Downlading JavaScript bundle 100,00%". I either have to stop and restart within WebStorm or I have to close the expo app and re-open it. Either way will make the app start again on my device.
This is my first time working with javascript, react native, expo, so I am not sure, but it should be possible to debug in WebStorm directly, right? As mentioned, in Visual Studio Code everything including debugging works fine, so I don't think it's anything in the code. Maybe someone here has an idea where the problem lies?
node -v: v11.6.0
react-native -v: react-native-cli: 2.0.1, react-native: 0.57.1
Any help will be greatly appreciated! Thanks in advance!
PROOF
HOWTO
Looks like there's been an update to how you can setup Configurations since you tried.
Try changing the Bundler host to 127.0.0.1 and try again.
I just setup Webstorm v2020.2 yesterday to debug my Expo application and it is working as expected.
These instructions were all that I required: https://www.jetbrains.com/help/webstorm/react-native.html#ws_react_native_create_run_config
On the main menu, go to Run | Edit Configurations, click icons.general.add.svg and select React Native from the list. The Run/Debug Configuration: React Native opens.
Choose whether you want WebStorm to build and launch the application for you:
Select the Build and launch checkbox if you are launching your application for the first time or if you have updated its native code since the last run.
If your application uses Expo, clear the checkbox because this bundler takes care of the process itself.
If you selected the Build and launch checkbox, choose the target platform, Android or iOS. Depending on your choice, WebStorm will run the bundler with react-native run-ios or with react-native run-android.
Optionally, type the arguments to be passed to React Native, for example, specify the simulator type through the ‑‑simulator flag: ‑‑simulator="iPhone 4s".
In the Bundler host field, specify the host where the React Native bundler runs, the default value is localhost.
If you are using Expo, change the default bundler host to ensure successful connection with the debugger. This connection may fail because WebStorm by default uses localhost to start debugging while Expo expects 127.0.0.1 or an external IP address depending on what is selected in Connection field of the Metro bundler configuration. See Debugging a React Native application that uses Expo for details.
In the Bundler port field, specify the port on which the React Native bundler runs, by default 8081 is chosen, learn more from the React Native official website.
Choose the Node.js interpreter to use. This can be a local Node.js interpreter or a Node.js on Windows Subsystem for Linux.
Specify the path to react-native-cli and the working directory of the application. Optionally, type the environment variables for react-native run-android or react-native run-ios.
By default, WebStorm starts the React Native bundler automatically when you invoke the run/debug configuration. If you have already started the bundler from outside WebStorm, for example, from the command line, you can re-use it without stopping and restarting. Select your bundler in the Before Launch area and click Remove.
The issue is tracked at WEB-35719, please follow it for updates

ionic 2 for browser platform is not working

I want to create an app which is able to run in mobile phone and also in browser (of course no device dependency functions). Here are the steps:
ionic start --v2 demo blank
cd demo
ionic platform add browser
ionic build browser
cd platforms/browser
php -S localhost:8000
Then open localhost:8000 in browser.
I looked through the ionicframework document. There is nothing about platform browser. Can anybody advise how I can run my app in browser? Thanks.
You don't need to add the browser platform, just run ionic serve:
ionic start --v2 demo blank
cd demo
ionic serve
Further information can be found here.
From the official documentation ionic2, its clear that the platform can either be ios or android as shown below screenshot.
So, when you want to render it in a browser, you can simply use
ionic serve
If you want to run browser platform, then cd platforms/browser/www instead of cd platforms/browser, and run local server from there.
Perform the following code at the root of the project and then the web-browser based version will be generated at /www/ folder including the sub-directories such as assets, build & index.html which is the main point of entry for the web app.
If you wanna have the app packaged as a staging or production bundle, the following command can be used, which will again generate the prod build at the same /www/location.
npm run ionic:build --prod

Publishing Django app writter in Aptana to Heroku

I am new to almost everything web development related. I am using Aptana studio 3 on a Mac and have built a very basic app using Django that works as expected on the Django development server provided with Django. I now want to try out publishing it to a 'real' server. I found out that Aptana has some integration with Heroku and so decided to try and publish there.
On the app explorer in Aptana I am locating my django project (named 'mysite') on the dropdown and then clicking the publish button to run the 'Web Deployment Wizard'. After selecting that I want to publish on Heroku and filling in the details of my Heroku account I click finish. A terminal window opens at the bottom with the command:
heroku create mysite; git push heroku master
I then get:
Authentication failure
Enter your Heroku credentials.
Email:
If I enter my login details, it says 'Authentication success' but then immediately follows with another authentication failure. This repeats indefinitely.
Any ideas what is going wrong?