Wednesday, June 15, 2011

Getting Started with Mobile App Development

If you are just getting started with mobile apps, here's some advice about where to start.  I use Adobe Flash Professional CS5 for my app development because the same project can be used for iOS, Android or Blackberry app development.  There are just as many Android users as iPhone users, so you can double your customer base by learning a single product.  RIM has a fair market share too and certainly worth learning about how to release apps for that market.

Recommended Path
1) Install Flash Professional, free for 30 day trial, then about $400 for a retail version
2) Read the first section of Professional Flash Mobile Development to get the development environment set up and run the HelloWorld application
3) Learn Flash by watching the Free Videos from Adobe (40 hours)
4) Learn Action Script by watching th Free Videos (8 hours)
5) (optional) Google "Flash Games" to see what other people have already done
6) (optional) Create a new bank account 
7) Register with Apple ($100), Google ($25) and BlackBerry (Free for now) as a developer.  (Note: You will need a PayPal account to sign up with BlackBerry.)
8) Submit your app to Apple, Google and BlackBerry.  Preparing the app for submittal is fairly involved and somewhat different for each platform and is not covered in detail this blog posting.

Obviously, mobile app development is a fairly involved process that takes persistence more than anything else and here are some of the items you will need

Items You Will Need
  • Computer (Mac or Windows), I have use a Lenovo laptop and a Macbook Pro laptop
  • Adobe Flash Professional CS3 or higher, around $400
  • Mobile device(s), I have an iPhone 4 and Samsung Captivate and swap the same SIM card between the 2 devices.
  • Book Professional Flash Mobile Development, $26.39 at Amazon
  • (Optional) Wacom tablet for gesture events on a computer, $129 at Frys
Video Tutorials
  • I'm a big fan of video tutorials for learning software products, and luckily Adobe publishes a boatload of free videos at http://tv.adobe.com, and I would suggest watching some or all of the Flash Getting Started Videos
  • Flash uses a programming language called Action Script and here's where you can learn about how to program in Action Script video tutorial series
  • (Optional) If you want to model 2D physics in your apps like Angry Birds, you can add a free library called Box2D.  Here's an extensive tutorial about how to use the library functions and part 2 is an excellent tutorial on a comprehensive example of how to use Object Oriented Programming techniques.
 Tips
  •  If you are going to develop apps for an iPhone, you will need an iPhone.  It's possible to develop Android apps with just the emulator, but I found it much easier to test on an actual device.  If you have an iPhone, then you won't need an iPad for development, although it might help.  I use an iPhone as my primary mobile phone and physically remove the iPhone SIM card from the iPhone and put it in the Android when I need 3G access.  These 2 devices use different size SIM cards, so I use an adapter that holds the iPhone 4 micros SIM so the contacts match up with the Android contacts.
  • One of the great features of mobile apps is the ability to use gestures, like a pinch gesture to zoom out or swipe gesture to move to the next picture.  The iPhone emulator will recognize 2 finger gestures by pressing the ALT key along with the mouse.  However, I could never find out how to do the same thing with the Android emulator.  Plus, some things are just easier using a tablet.
  • My first app took several months to complete before I submitted it to Apple.  Then Apple took exactly one week to approve.  Google does not have an approval process, so once you upload your app and click the publish button, it's available in the Market.  BlackBerry has an approval process and so far, the process takes more than a week.
  • Try to keep notes on the submittal process so you can reference your notes later on when it's time to do an upgrade, otherwise its easy to get confused and frustrated by the process.
www.SmartLittleKid.com

No comments:

Post a Comment