2. Mobile History
● Mobiles have moved up with capabilities
● Simple Mobile
● To More Compact
● To Smart Phones
● Operating Systems
○ Embedded (custom)
○ J2ME
○ Android
○ Apple iOS
○ Symbian
○ BlackBerry OS
3. J2ME
Java Based
Portable (based on version)
-- Connected Limited Device Configuration (CLDC)
Does not have many classes from J2SE
● JVMs
● Brew
● Sun
● Other Vendor
4. Android
Google Tech
Open Handset Alliance based ( AT&T, Verizon
etc)
Open Source
Java and Non Java based development.
Java
- SDK
Non-Java
- NDK ( Native Development Kit )
5. Symbian
Symbian ( 2009 - Royalty Free - Symbian
Foundation)
Symbian acquired by Nokia
- Nokia acquires QT.
- Adds QT Support to Symbian
Excellent Platform
- J2ME Support
- C/C++ based development
6. BlackBerry
Blackberry.
Excellent Devices for Business.
- IMHO this is a panic reaction
- Not doing so well ( BB tab was being sold a
15 K INR last X'Mas)
- Java Based development
- Limited API
- Need you to consume BB service.
7. Apple ( iOS 5.x)
Apple uses ARM based Processors
Operating System is called iOS.
Current Major Version 5.x
Last hardware released
- The New iPad.
-- Has more resolution than a HD TV !!
-- Same from factor( almost ) !!
8. Devices that can be used
iPhone 3
- iPhone 3 arm v6,
- 3GS armv7
iPhone 4
iPad ( iPad , iPad 2 the new iPad) - Ax
- new iPad uses Arm A5X processor
- iPod
- 4th Gen +
10. Tools
● XCode
○ IDE
● Instruments
○ Testing and Analytics Tool
● Interface Builder
○ User To build UI ( .xib ) files
● Language Objective C
11. Application
Entry Point
-main()
● Create Applciation Class Object
● Create Delegate to manage Application
Events
● Create Views ( Screens)
○ Manage Event Life cycles
12. Views - Life Cycle
● init /initWithNibName
● didLoad
● willAppear
● didAppear
● shouldAutorotateToInterfaceOrientation
● viewWillDisappear
● viewDidUnload
● didReceiveMemoryWarning ( any time !)
13. Fences
● Application load
○ Has 20 secs to start
○ Any Later - App will be Killed/ operation stopped.
● Forbes 214 Million app launch tests
○ iOS Likely to crash more often than Android.
19. Interface Builder
Create UI
● Different For iPad and iPhone
● App needs to detect current device &
orientation
Orientation : Human Interface Guidelines -
Support Both versions of same orientation
atleast.
● LandscapeLeft/LandScapeRight
● Portrait / PortraitUpsideDown