The document discusses the iPhone and its SDK (software development kit). It provides an overview of the iPhone as more than just a phone, describing its built-in features like accelerometers, GPS, touch interface, and apps. It outlines the iPhone SDK tools including Xcode for development and the App Store for distribution. It also discusses the economics of developing iPhone apps and potential revenue models.
1. The iPhone and the SDK
Mike Qaissaunee
mqaissaunee@brookdalecc.edu
http://q-ontech.blogspot.com
www.twitter.com/mqaissaunee
www.slideshare.net/mqaissaunee
6. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
7. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
• Built in Accelerometer
8. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
• Built in Accelerometer
• GPS or Position Triangulation
9. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
• Built in Accelerometer
• GPS or Position Triangulation
• Multi Touch Interface
10. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
• Built in Accelerometer
• GPS or Position Triangulation
• Multi Touch Interface
• Sensors
11. What is the iPhone?
• Apple’s Smartphone
• More than a Phone?
• Built in Accelerometer
• GPS or Position Triangulation
• Multi Touch Interface
• Sensors
• Keyboard
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
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
14. 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
15. 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
16. iPhone Overview
• Smart Phone +
– iPod (Widescreen)
– Wireless Internet Communication Device
– Wifi 802.11 b/g
– PDA
– Computer (OS X)
– Camera
– App Store
17. 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
18. 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!
21. iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools
1.XCODE
• Professional text editor
• Debugger
• GCC compiler
22. iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools
1.XCODE
• Professional text editor
• Debugger
• GCC compiler
23. iPhone SDK
iPhone SDK includes five powerful
iPhone programming tools
1.XCODE
• Professional text editor
• Debugger
• GCC compiler
24. 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
25. 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
30. 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
31. Media Layer
provides graphics and
media technologies for
creating advanced
multimedia experiences
– Graphics Technologies
– Core Audio
– OpenAL
– Video Technologies
32. Core Services
Provides fundamental or
core system services that
all applications use – Address Book
– Core Location
– CFNetwork
– Security
– SQLite
33. 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
34. 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
35. 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
36. 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
37. 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
38. 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
39. 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
40. Classes of iPhone Applications
• We can define three types of iPhone
applications:
– Productivity
– Utility
– Immersive
41. 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
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84. 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
85. 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.
86. iPhone Developer University
Program
The iPhone Developer University Program
includes:
• iPhone SDK
• iPhone Dev Center Resources
94. 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
95. Join us Summer 2009 in Phoenix
watch ate-con.org for details