Phonegap… how could I forget about Phonegap?

By Building my own tech
Build my own mobile app by Netshock Technology Blog

I’ve been looking at ways to develop my skill set recently. I already have a pretty solid grounding in web infrastructure (Ubuntu server, Apache, PHP) and I wanted to extend my reach to mobile apps. To start with, I just want one of my websites to be native to the device – that is, running as an app, rather than through the browser.

I don’t want it to have any special functionality – I just want an exact replica of my responsive website on my mobile device (with a pretty app icon). Once I’ve got that up and running, I’ll start looking at ways to extend the app functionality to read from my WordPress JSON feed, making the app dynamic and ever changing for my users.

I also want the app to be available on all platforms – iOS, Android, Windows Mobile, Ubuntu Touch, Amazon Fire and Firefox OS. That is a tall order for someone that only has a reasonable understanding of HTML, CSS, Javascript and PHP, it seemed like a never ending learning curve was about to hit me.

That is until I remembered about Phonegap, which is a tool that has been developed with this specific use case in mind. It’s for people that have html, css and javascript knowledge that want to convert their websites or web apps into native mobile mobile apps.

It’s a great little tool, effectively, you just drop your existing website files into your Phonegap directory. You can then build that website into a native app on any platform of your choosing – pretty cool huh?

So what are all the advantages of Phonegap?

The main advantage of Phonegap is that it’s extremely easy to learn, meaning that anyone can build their own mobile app, whether they have any programming experience or not. Yes, you need HTML / CSS knowledge to create a basic app, but with all the free HTML templates that are available to you online, you’ll find you don’t really need to do much, other than change the text.

If you’re already technically aware, the ease of learning is probably not going to sway you to use Phonegap. Well, it didn’t for me either. The thing that sold me on Phonegap is that it supports plugins, meaning that you can extend the functionality of your app to do almost anything. Even better than that, other Phonegap developers are releasing plugins on platforms such as Themeforest, which means you can piece together your own app, with all the functionality you need, without writing a single line of code.

The extra bit of icing on the cake is that Phonegap can build apps for all platforms from a single code base. So there is no need to write a different version of the app for each mobile operating system! This speeds up time to market and also makes supporting and managing the app much more straightforward.

What are the drawbacks?

There are a few drawbacks to using Phonegap. In my mind, the biggest drawback is the speed of data processing. A native app, written in Java or C# would be able to process data much faster than the Javascript app that will be generated by Phonegap. Along the same lines, Javascript is not a multi-threaded programming language, this means that it is not possible to process tasks in the background to ensure a smoother user journey.

Overall, should I use it?

It’s very hard to answer that question without knowing your personal requirements. However, if you’re trying to cut costs of app development (which can run into thousands of pounds per mobile OS), then I would suggest taking a look at Phonegap. While the performance may not be as good as an app written in a native language, that may not matter now that we’re starting to see much more powerful devices hit the shelves and a couple of seconds delay may not be something that will make or break your app. It’s an open source project, so it’s certainly worth a look.

Image used under creative commons

Tagged under: