How to disable phonegap autoreload (At least during dev) - api

Here is my issue:
I've installed phonegap and phonegap desktop.
http://code.riffzone.net/phonegap-install-msw/
Now, when I'm working on my application (Jquery Mobile), I'm testing it on a browser, but the application is reloading again and again after every 2 seconds and I can't even write something in the form input, reloading to fast..
I don't understand where this is coming from?
Here is the screen shot of my browser and the firebug console where you can see the page reloading over and over (1) and the api_auto_reload in the console (2).
Thanks a lot :)

The reload should be triggered only when some of your source files is changed. For some reason it does detect change on your files constantly. That reason is quite hard to find out without debugging more. You can, though, turn the auto reload off with --no-autoreload switch for phonegap serve like this
phonegap serve --no-autoreload

It was phonegap desktop beta (the minimalist server) and not phonegap (command line) which was causing this bug.
If you have the same issue, make sure you are not using it.

Related

Stuck on Downloading Javascript Bundle 100% - Expo

I guess that I've tried every solution that exists on the internet about this issue, and nothing works, and I don't even know where to look anymore. It started to happen from nowhere and I can't even open the app settings shaking the phone, it's completely stuck on this screen.
I cleaned up NPM, Yarn, Expo's caches and disabled the Remote Dev Tools.
I would be so much thankful for any help.
In my case it was due to the a remote debugger.
I left the remote debugging on, put the mac in sleep and when I turned it on again the iOS Simulator remained stuck at bundling 100%, irrespective of what I've tried (kill simulator, expo r -c, Reload app, etc.)
However, I could have realized the root cause earlier because on the physical device it was working the entire time.
Hope this saves someone some time.
You could try reverting to your last known working commit, then incrementally adding back the changes until this happens again. This often is a result of delaying hiding the splash screen (perhaps via AppLoading or SplashScreen) and then not hiding it because of some error in the app code preventing the code to hide it from being called.
Try Disable Debug Remote JS in the IOS Simulator
by clicking ctrl + cmd +Z on Mac
It works for me.
Seems like something is wrong with the dependencies, just close down the react-native environment ( android studio) and your IDE, just closing and restarting may work if not, check for updates or delete and reinstall your dependencies ( expo i )

Vue Native - Debugging

Recently I switched from Ionic framework to vue-native (vue.js wrapper around react-native), everything seems to be cool, development is fast and easy, but I have some real issues with debugging those apps. With Ionic Framework (Cordova) I was able to open an app in web browser and could easily manage Vuex state (for example) from Chrome Console. It doesn't seems so easy and trivial in react native world. Is it possible to have similar debugging experience in vue-native? When my app starts to grow and gets complicated it's really hard to handle it other way around. Any help appreciated.
Basically all my problems gone away when I ported my apps to Expo (which allows for JS remote debugging) and grabbed React Native Debugger - https://github.com/jhen0409/react-native-debugger.
Important part is having simulator installed on your developer machine (like iphone simulator) because debugger doesn't play nicely with real machines.
Inside debugger hit cmd+t to open a new window and set port to 19001 (because of Expo using this port). Now start expo with npm start command and in Expo panel hit 'Run in simulator' button.
In simulator make a shake gesture (ctrl+cmd+z) and allow remote debugging in developer menu.
Done. Pleasant experience similar to one known from Cordova. You have a js console, you can inspect elements and change styles live. Expo comes with live reload to make things smoother.
More info here: https://docs.expo.io/versions/latest/workflow/debugging/
Unfortunately, you cannot debug script parts in the VUE files in Chrome Dev Tools (you can put the breakpoints, but they are not working well), but if you put the methods to a separate JS file, it works like a charm. I know, it's a workaround, but not a big pain, and working well.
See my TODO app for example: https://github.com/TheBojda/VueNativeTodo

Application stuck at "Powered by Titanium screen"

I'm trying to run an app made on Titanium in my cellphone. At first it was working fine, until i decided to debug my code. After that whenever i try to run it on my cellphone, it gets stuck # the powered by titanium screen (that red one).
I tried to delete my build folder as some people said after a bit o research but it won't work.
How can i solve this?
What I would try to do is:
clean the project (it also deletes the build folder, but I think it also cleans some more stuff in there).
when the app starts try to set an alert in app.js as the first thing - see if this alert shows, and if it does - move it to the next step until you find a place where it is no longer shown which might indicate that this is where you problem is.
Look at the device logs - if it's an android device open ddms and look at the logs while you run the app - see if anything pops up. If it's an iPhone on xCode you have some sort of console viewer for the phone (sorry - can't remember the name right now).
make sure you are not still running under debug mode.
BTW - you didn't mention if it happens on iPhone or Android? does it happens on the simulator as well?
I was having the same issue. From digging through Appcelerator's Jira I found we weren't alone, and also got a workaround that allows us to get past the splash screen. Check to see if there is a deploy.json file located in your application's directory on the device. If so delete it!
Here is more info on the issue https://jira.appcelerator.org/browse/TIMOB-16086.
It's rated as a high priority to be corrected for the 3.3.0 SDK release.

Any recommendation/suggestion on best practice to develop app using PhoneGap for Android or iOS?

Also, is there a way to test those webapp in a webkit based browser such as chrome (with phonegap plug-in maybe) on a PC first before compiling it to test on a device or emulator?
The key reason is that trouble shooting mal-formed html, javascript code is very difficult on a device or emulator. You can not view the js console to see all error. The Weinre is great, but it can not spits out the error browser complains when initially loading the page.
It will be great if we can validate the html, js, css app first before diving deeper into testing on Android device. i.e. a way to weed out some simple problems before getting into more complicated deeper problems.
Any experience/suggestions/ideas/pointers are greatly appreciated.
Paul> Seems promising. Will try and report back. It seems knowledgeable in phoneGap mob dev. What are the key steps would you go through to dev a phoneGap mob web-app?
Ripple is a Chrome plug-in that includes a PhoneGap mode.
For JavaScript static validation, the PhoneGap Android Eclipse AppLaud plug-in includes a JSLint mode.
I would recommend you use Safari. In your Safari (on Mac) go to Settings (on PC) goto preferences -> Advanced -> check on "Show Develop in Menu bar".
Now you'll find in the Menu "Develop" "User Agent". There you can change the UserAgent identification, that will be send to the server. You can then change it to iPhone.
This way you can at least test it for iOS.
Hope that helps somewhat.

Cocoa WebView SWF

I am trying to load an SWF inside a WebView in my cococa app, it works fine when I load an HTML which references the SWF. But i'd like do load the flash file alone, with no HTML. Is that possible??
Yes.
It's broken in currently-released WebKit (even on Snow Leopard), but last I checked, it was fixed in WebKit nightlies, so it'll work again someday.
I finally found an answer for that. It is not quite a fix, but it can get my app working for now.
Every time swf is loaded it make a call to debugger and XCode stops.
According to this post, I should disable the option "Stop on debugger" at run menu in XCode.
Now my project is up and running.
Thanks!