The iPhone and the SDK

   Mike Qaissaunee
   mqaissaunee@brookdalecc.edu
   http://q-ontech.blogspot.com
   www.twitter.c...
What is the iPhone?
What is the iPhone?
• Apple’s Smartphone
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    • Built in Accelerometer
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    • Built in Accelerometer
    • GPS or Position Triangula...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    • Built in Accelerometer
    • GPS or Position Triangula...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
    •   Built in Accelerometer
    •   GPS or Position Trian...
iPhone Overview
• Smart Phone +
  – iPod (Widescreen)
  – Wireless Internet Communication Device
       – Wifi 802.11 b/g
...
iPhone Development
• Development done with the help of
  iPhone SDK (requires an Intel MAC)
  – Uses Objective-C
  – XCODE...
iPhone Economics



• 30 Million Touch devices
• Assume $1.99 application
• Popular app - 10% of devices (3 Million)
  – $...
iPhone SDK
iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools

1.XCODE
    •   Professional text editor
    •   De...
iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools

1.XCODE
    •   Professional text editor
    •   De...
iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools

1.XCODE
    •   Professional text editor
    •   De...
iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools

1.XCODE
     •   Professional text editor
     •   ...
iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools

1.XCODE
     •   Professional text editor
     •   ...
iPhone SDK
iPhone SDK

4. Dash Code
    •   For creating web applications for Safari
iPhone SDK

4. Dash Code
    •   For creating web applications for Safari
5. iPhone Simulator
iPhone OS can be viewed as set of layers
Cocoa Touch Layer
the basic tools to
                    – Application management
implement
                    – Graphics...
Media Layer
provides graphics and
media technologies for
creating advanced
multimedia experiences
                        ...
Core Services

Provides fundamental or
core system services that
all applications use        – Address Book
              ...
Core OS
• encompasses the kernel
  environment, drivers, and basic      – Threading (POSIX
  interfaces of the operating s...
iPhone Hardware and Software Features
          Available to Applications
• Accelerometer
  – iPhone and iPod touch have 3...
iPhone Hardware and Software Features
        Available to Applications

• Core Location
  – Core Location monitors signal...
iPhone Hardware and Software Features
         Available to Applications
• Contacts
  – The Phone, Mail, and SMS Text appl...
iPhone Hardware and Software Features
         Available to Applications
• The Camera and Photo Library
  – iPhone has a c...
App Distribution
Three methods of distribution:
   – App Store
      • Wi-Fi/EDGE/HSDPA on iPhone
      • Desktop syncing ...
Downloading Apps
App Store distribution method determined by size:
   – Apps < 10 MB can be downloaded over
     the cellu...
Classes of iPhone Applications
• We can define three types of iPhone
  applications:
  – Productivity
  – Utility
  – Imme...
What’s Different About
    Programming for the iPhone?
•   Only one running application
•   Only one window
•   Limited ac...
iPhone Developer University
             Program
a free program designed for higher education
institutions looking to intr...
iPhone Developer University
            Program
Student Development Team
The iPhone Developer University
Program allows in...
iPhone Developer University
          Program
The iPhone Developer University Program
includes:
  • iPhone SDK
  • iPhone ...
iPhone Developer University
        Program
• Testing on iPhone and iPod touch
iPhone Developer University
         Program
• Internal or App Store distribution
iPhone/SDK Recommendations
 – Optimize Web Site for Mobile Devices
 – Computer Science  iPhone University Developer
   Pr...
Join us Summer 2009 in Phoenix




                 watch ate-con.org for details
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Programing for the iPhone
Upcoming SlideShare
Loading in...5
×

Programing for the iPhone

61,827

Published on

A presentation on iPhone programming given to the Brookdale Computer Science club - 3/31/2009

0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
61,827
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
347
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide






























































































  • Transcript of "Programing for the iPhone"

    1. 1. The iPhone and the SDK Mike Qaissaunee mqaissaunee@brookdalecc.edu http://q-ontech.blogspot.com www.twitter.com/mqaissaunee www.slideshare.net/mqaissaunee
    2. 2. What is the iPhone?
    3. 3. What is the iPhone? • Apple’s Smartphone
    4. 4. What is the iPhone? • Apple’s Smartphone • More than a Phone?
    5. 5. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer
    6. 6. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation
    7. 7. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface
    8. 8. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors
    9. 9. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard
    10. 10. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard • Safari
    11. 11. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard • Safari • Mail
    12. 12. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard • Safari • Mail • Calendar
    13. 13. What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard • Safari • Mail • Calendar • Wide Screen Display
    14. 14. iPhone Overview • Smart Phone + – iPod (Widescreen) – Wireless Internet Communication Device – Wifi 802.11 b/g – PDA – Computer (OS X) – Camera – App Store
    15. 15. iPhone Development • Development done with the help of iPhone SDK (requires an Intel MAC) – Uses Objective-C – XCODE + Other tools – Can submit your application to App Store – $99 membership – Review your application + code – Revenue model – You set your price (free, 99 cents, $9.99, etc) – 70% developer (you) and 30% Apple
    16. 16. iPhone Economics • 30 Million Touch devices • Assume $1.99 application • Popular app - 10% of devices (3 Million) – $6 Million = $4.2 Million to Developer! • Less popular - 1% of devices (300,000) – $600,000 = $420,000 to Developer!
    17. 17. iPhone SDK
    18. 18. iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
    19. 19. iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
    20. 20. iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
    21. 21. iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler 2.Interface Builder • For creating user interface
    22. 22. iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler 2.Interface Builder • For creating user interface 3.Instruments • For optimizing application
    23. 23. iPhone SDK
    24. 24. iPhone SDK 4. Dash Code • For creating web applications for Safari
    25. 25. iPhone SDK 4. Dash Code • For creating web applications for Safari 5. iPhone Simulator
    26. 26. iPhone OS can be viewed as set of layers
    27. 27. Cocoa Touch Layer the basic tools to – Application management implement – Graphics and windowing support graphical, event- driven applications – Event-handling support – User interface management – Objects representing the standard system views and controls – Support for text and web content – Accelerometer data – The built-in camera – The photo library – Device-specific information
    28. 28. Media Layer provides graphics and media technologies for creating advanced multimedia experiences – Graphics Technologies – Core Audio – OpenAL – Video Technologies
    29. 29. Core Services Provides fundamental or core system services that all applications use – Address Book – Core Location – CFNetwork – Security – SQLite
    30. 30. Core OS • encompasses the kernel environment, drivers, and basic – Threading (POSIX interfaces of the operating system threads) • Provides access to low-level – Networking (BSD features of the operating system sockets) – File-system access – Standard I/O – Bonjour and DNS services – Location information – Memory allocation
    31. 31. iPhone Hardware and Software Features Available to Applications • Accelerometer – iPhone and iPod touch have 3 accelerometers to measure/detect movement along each of the primary (x, y, and z) axes in three-dimensional space – The system uses the accelerometers to monitor a device’s current orientation and to notify applications when that orientation changes – Applications can access accelerometer data directly
    32. 32. iPhone Hardware and Software Features Available to Applications • Core Location – Core Location monitors signals from cell towers and Wi-Fi hotspots to triangulate the user’s current position – Accuracy of location information and threshold for reporting location changes can be specified – Use sparingly – drains battery
    33. 33. iPhone Hardware and Software Features Available to Applications • Contacts – The Phone, Mail, and SMS Text applications use contact list to identify contacts and to facilitate basic interactions such as starting a phone call, email, or text message – Your applications can access contacts for similar purposes or to get other information relevant to your application
    34. 34. iPhone Hardware and Software Features Available to Applications • The Camera and Photo Library – iPhone has a camera and photo library -- iPod Touch has no camera – iPhone OS provides access to both of these features – You can incorporate system-provided picker interfaces into your application – These interfaces provide standard system views for selecting a photo from the user’s photo library or taking a picture using the camera
    35. 35. App Distribution Three methods of distribution: – App Store • Wi-Fi/EDGE/HSDPA on iPhone • Desktop syncing via iTunes – Enterprise • Proprietary in-house apps • Requires 500+ employees – Ad-hoc • Provide users with app via email/website • Requires users to register their device ID with the developer • 100 device limit per app 72
    36. 36. Downloading Apps App Store distribution method determined by size: – Apps < 10 MB can be downloaded over the cellular network – Apps > 10 MB require WiFi connectivity or side loading via iTunes 73
    37. 37. Classes of iPhone Applications • We can define three types of iPhone applications: – Productivity – Utility – Immersive
    38. 38. What’s Different About Programming for the iPhone? • Only one running application • Only one window • Limited access - sandbox • Limited response time - 5 seconds • Limited screen size - 480 x 320 pixels • Limited system resources (RAM + storage) • No keyboard or mouse 23
    39. 39. iPhone Developer University Program a free program designed for higher education institutions looking to introduce curriculum for developing iPhone or iPod touch applications. The University Program provides a wealth of development resources, sophisticated tools for testing and debugging, and the ability to share applications within the same development team. Institutions can also submit applications for distribution in the App Store. http://developer.apple.com/iphone/program/university.html
    40. 40. iPhone Developer University Program Student Development Team The iPhone Developer University Program allows instructors and professors to create a development team with up to 200 students.
    41. 41. iPhone Developer University Program The iPhone Developer University Program includes: • iPhone SDK • iPhone Dev Center Resources
    42. 42. iPhone Developer University Program • Testing on iPhone and iPod touch
    43. 43. iPhone Developer University Program • Internal or App Store distribution
    44. 44. iPhone/SDK Recommendations – Optimize Web Site for Mobile Devices – Computer Science  iPhone University Developer Program – Create iPhone App for Marketing – Create iPhone App for Registration/Student Services – Integrate iPhone into Classroom Activities – Also Investigate Google’s Android App Store and RIM’s Blackberry App Store
    45. 45. Join us Summer 2009 in Phoenix watch ate-con.org for details
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×