Introduction to Progamming Applications for the iPhone


Published on

Published in: Technology, News & Politics
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Introduction to Progamming Applications for the iPhone

  1. 1. iPhone Applications Rajasekhar Reddy, Talentica Software
  2. 2. Agenda <ul><li>Stats about iPhone </li></ul><ul><li>iPhone Technology </li></ul><ul><li>See iPhone touch functionality in action </li></ul><ul><li>Development tools </li></ul><ul><li>Object-C </li></ul><ul><li>HelloWorld! App </li></ul><ul><li>UICatalog – Show UI Controls available in iPhone </li></ul><ul><li>Interacting with outside world </li></ul><ul><li>Loylogic app </li></ul><ul><li>iPhone app distribution </li></ul>
  3. 3. 1 Billion+ Downloads from app store On average each app got downloaded approximately 29,000 times
  4. 5. Total app downloads 1 billion = 10^9 Total iPhones sold 20 Million = 2*10^7 Average apps per iPhone = 50
  5. 6. iPhone Technology <ul><li>Multi-Touch </li></ul><ul><li>Accelerometer </li></ul><ul><li>Sensors </li></ul><ul><li>Location Services </li></ul><ul><li>3G </li></ul>
  6. 7. iPhone Technology <ul><li>Multi-Touch </li></ul><ul><li>With its large Multi-Touch display and innovative software, iPhone lets you control everything using only your fingers. How does it work? A panel underneath the display’s glass cover senses your touch using electrical fields. It then transmits that information to an LCD screen below it. The display also features an oil-resistant coating that keeps the iPhone screen clean. </li></ul>Accelerometer iPhone responds to motion using a built-in accelerometer. When you rotate iPhone from portrait to landscape, the accelerometer detects the movement and changes the display accordingly. The accelerometer also gives you amazing game control.
  7. 8. Sensors When you lift iPhone to your ear, the proximity sensor immediately turns off the display to save power and prevent accidental dialing. The ambient light sensor in iPhone automatically brightens the display when you’re in sunlight or a bright room and dims it in darker places. Location Services GPS (Global Positioning System) technology uses information from earth-orbiting satellites to find locations. A-GPS (Assisted GPS) on iPhone 3GS goes a step further, finding the closest satellites to more quickly identify your position. If you’re not within a clear line of sight to a GPS satellite, iPhone finds you via Wi-Fi. If you’re not in range of a Wi-Fi hotspot, iPhone finds you using cellular towers. The size of a location circle tells you how accurately iPhone is able to calculate that location: The smaller the circle, the more accurate the location. iPhone also offers a built-in digital compass that automatically repositions maps to match the direction you’re facing .
  8. 9. Multi touch using simulator <ul><li>Contacts </li></ul><ul><li>Photos </li></ul><ul><li>Safari Bookmarks for deleting </li></ul><ul><li>Saving image from safari </li></ul><ul><li>Deleting and rearranging spring board applications </li></ul><ul><li>Move Me app </li></ul>
  9. 10. Development Tools in the iPhone SDK <ul><li>Xcode </li></ul><ul><ul><li>Complete development environment provides project management, a powerful source editor, and a graphical debugger. </li></ul></ul><ul><li>iPhone Simulator </li></ul><ul><ul><li>Run, test, and debug your application locally on your Mac using a simulated iPhone. </li></ul></ul><ul><li>Interface Builder </li></ul><ul><ul><li>Interface Builder makes designing a user interface as easy as drag and drop. </li></ul></ul>
  10. 11. Objective-C <ul><li>Objective-C is a superset of the ANSI version of the C programming language and supports the same basic syntax as C. </li></ul><ul><li>File Extensions </li></ul><ul><ul><li>. h Header files. Header files contain class, type, function, and constant declarations. </li></ul></ul><ul><ul><li>.m Source files </li></ul></ul>
  11. 13. Objective-C <ul><li>[myArray insertObject:anObject atIndex:0]; </li></ul><ul><li>[[myAppObject theArray] insertObject:[myAppObject objectToInsert] atIndex:0]; </li></ul><ul><li>Properties </li></ul><ul><ul><li>@property BOOL flag; //In header file </li></ul></ul><ul><ul><li>@synthesize flag; //In Implemantation file </li></ul></ul>
  12. 14. First iPhone Application <ul><li>Design Patterns </li></ul><ul><ul><li>Delegation </li></ul></ul><ul><ul><ul><li>Useful when more than one method is needed </li></ul></ul></ul><ul><ul><li>Target-Action </li></ul></ul><ul><ul><ul><li>Event like situation (button clicked etc..,) </li></ul></ul></ul><ul><ul><li>Model-View-Controller </li></ul></ul><ul><ul><ul><li>Model objects represent data </li></ul></ul></ul><ul><ul><ul><li>View objects know how to display data and may allow the user to edit the data. </li></ul></ul></ul><ul><ul><ul><li>Controller objects mediate between models and views. </li></ul></ul></ul>
  13. 15. Hello World!
  14. 16. UICatalog
  15. 17. Interacting with outside world <ul><li>Web service </li></ul><ul><li>REST </li></ul><ul><li>XML Parsing </li></ul><ul><ul><li>Only NSXMLParser is available </li></ul></ul><ul><ul><li>No XmlDocument class where we can do xpath queries </li></ul></ul><ul><ul><li>We are using touchXML. It is drop replacement for NSXMLDocument </li></ul></ul>
  16. 18. LoyLogic app
  17. 19. Distribute your application <ul><li>Join iPhone developer program </li></ul><ul><ul><li>Standard program costs $99 </li></ul></ul><ul><ul><li>Enterprise program costs $250 </li></ul></ul><ul><li>Ad Hoc Distribution </li></ul><ul><ul><li>Max 100 devices for Ad Hoc distribution </li></ul></ul><ul><li>App Store Distribution </li></ul>