At the end of last week a really interesting new PhoneGap tool was launched - the PhoneGap Developer App. The PG Developer App is a "shell" application that you can install on a real device (both Android and iOS with Windows Phone coming soon) and test with a local copy of your code. You can skip the SDK. You can test iOS on Windows. All you need is the core PhoneGap CLI and you are good to go. Let's take a quick look.
First - ensure you have installed the phonegap CLI via npm. Ensure you have the latest version (see my guide if you are new to npm) and then create a new project.
At this point you do not have to add a platform. Next - fire up the server:
Make note of the IP address. It should be obvious, but this tool requires that your mobile device be able to "see" your development machine. If you aren't on the same network (or on one of those cluttered free WiFi networks) you may have an issue. Ok, now, run the PhoneGap you downloaded to your device. Here's mine running on my iPhone.
Simply enter your IP address and hit connect. What you're seeing now in the app is the code from your project. If you switch back to your command prompt, you can see a butt load of messages - essentially an access log of requests. Fire up your favorite editor, make a change, and just click save.
It should update automatically, but if it doesn't, try a four finger tap. But to be clear, you do not have to go to the command line and run anything. It just - plain - happens.
Another interesting feature of the Dev App is that will automatically load all the core plugins. So if you want to test the Camera API, you just do it. No need to install the plugin manually. This is cool... but I kinda worry it may trip people up when they stop using the Dev App. I tend to be a worry wart though.
Another issue is that you cannot use remote debugging with it. By that I mean Safari Remote Debugging or Chrome Remote Debugging. Weinre works fine with it though.
So - thoughts? I've said before that I tend to focus on the Cordova CLI, especially when I teach, but I definitely see me demonstrating this next time I present on PhoneGap/Cordova.