June Tech Meetup - Iphone Vs Android
June was the month of mobile development, Kate Ho told us how to develop an iPhone application in 10 steps, and Andrey Levushkin talked about his experience developing an application for hedout (http://hedout.com/) on the Android platform.
Jessica Williamson also announced the launch of Startup Cafe (http://startupcafe.co.uk), where you can “Get your dose of Edinburgh innovation news”
Kate Ho on the IPhone
Kate Ho’s talk was based around developing an iPhone application in 10 steps.
- step 1. get a mac + itouch / iphone (intel based).
- step 2. have an idea and prototype it (draw your main interfaces to scale).
- step 3. fire up xcode.
- step 4. open the interface builder and build your interface.
- step 5. write some code.
- step 6. hook up the code to the relevant parts of the interface.
- step 7. check out your app on the simulator.
- step 8. check for memory leaks using instrument.
- step 9. test on a real device (need to pay to join apple developer connection).
- step 10. submit to the iphone appstore!
A lot of the talk during the Q&A revolved around the fact that Safari on the iPhone is a very capable browser and its possible to develop web applications with a similar look and feel to native applications without having go through all the hassle of the approval process.
Andrey Levushkin on the Android
Andrey from headout came to talk to us about his experience developing for the Android platform. He started explaining the concept behind Android which is to develop an open source platform that mobile phone manufacturers can install on their handsets, This allows developers to write applications for the platform that will run on any handset which uses android.
(After announcing that Android will be installed on 18 devices by the end of the year, the question “is that worldwide” got a laugh. Android is reasonably new and hasnt yet reached userbases as large as the iPhone).
Andrey went on to explain how android applications are structured, it uses the concept of activities where each activity represent one (or a set of closely related) user actions. Activities are launched through another concept of “intents” (for example, I want to write a text message) this allows applications to interact with each other, giving users the ability to replace applications as they wish.
The UI system is based on standard MVC patterns, where controllers are written in Java which controls an XML view.
The last piece of the puzzle is the “activity lifecycle” that controls how the application is create / destroyed / hidden etc, the platform notifies applications of when they will be put in the background or removed from memory.
After the talk finished there was a lot of discussion comparing the Android and iPhone platforms, Most of the discussion revolved around the much publicised nuances of the iPhone App Store approval process, in which a lot of developers have complained about inconsistent and unfair rulings. But if you are thinking about developing a mobile application, I would definitely check out both of the videos below.