Bartezz Bartezz - 1 year ago 68
Android Question

Building a hybrid app, where to start?

I know it's kind of an 'open' question to ask but I simply don't know where to start. Let me first tell you a bit of my experience/background so you know the level I'm at:

  • Build cd-roms with Lingo back in the days

  • Started web/front end development in the HTML3.2 era and kinda left off when XHTML was hot

  • Worked with Javascript 1.2 up till around 1.6 and later started working with Jquery

  • Actionscript up to 2.0, building websites and games

  • Did quite a bit of PHP/mySQL development. Build custom CMS' and later Drupal module development

  • All this was during internships or as a freelancer, everthing self thought by the help of books and such

So now I'm stuck with this idea to build myself an app. I've decided it should be an hybrid app as my target audience is very small but 60% is iOS and I don't want to leave out Android. Also I've been getting familiar with HTML5/CSS3 and started working on components for my app.
The basic concept for the app is that it's a layer on top of Google functionality: profile, calendar, circles and hangouts. Users will (eventually I hope) be able to create events for other users to rsvp to, they will be able to add eachother as buddies and chat about the events. A small step functionality wise but a huge step for me :)

I'm thinking of using the Crosswalk project for the Android version to counter the biggest issues around hybrid app development.

I've been reading up for the last months in preparation and the more I read the less I seem to know. Here's the stuff I think I should know more about;

  • Node.js

  • Gulp.js

  • Dev environment to work in (I once worked in Homesite, later Dreamweaver - don't laugh)

  • Packaging tools, etc etc.

  • Crosswalk project

Now I am not looking for some drag and drop software package to build an app in 3 days. I don't want to take the easy route per se, I don't mind a bit of a learning curve. I work on a Win8 machine, I know this isn't optimal but I can't change this.

Now where should I start? I was thinking NPM myself but you guys might think otherwise. Any good books on the stuff you think I need to learn to get me going?

Thanx for the advice!

Answer Source

I can share my experience with Cordova.

I work like full-stack developer and i'm quite expert to build responsive website, so the natural step to approach mobile dev was try Cordova.

First You can start to build HTML document totally responsive and try as webpage on your target devices. A cool stuff, targeting mobile devices, is that You can use new CSS3 directive, without worry for compatibility with old browser.

First I installed Cordova following this tutorial. Opening the folder /www on your project you can edit your app like a website, and you can also debug with the browser like a normal site.

To enhance the feature you will find a lot of plugins ready on github to extends the native functionality at the Cordova/phonegap project.

I suggest you also to build using onsen a framework that let you use mobile UI easily.

Last tip that i can give you, if you target Android is try your apps on virtual machine, i use Genymotion that is much more fast then SD<

Good luck with your first app!