Programing for the iPhone
Upcoming SlideShare
Loading in...5
×
 

Programing for the iPhone

on

  • 23,776 views

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

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

Statistics

Views

Total Views
23,776
Views on SlideShare
23,641
Embed Views
135

Actions

Likes
4
Downloads
344
Comments
0

8 Embeds 135

http://q-ontech.blogspot.com 100
http://www.slideshare.net 23
http://q-ontech.blogspot.ca 4
http://q-ontech.blogspot.in 2
http://q-ontech.blogspot.fr 2
http://q-ontech.blogspot.com.au 2
http://q-ontech.blogspot.co.nz 1
http://q-ontech.blogspot.co.uk 1
More...

Accessibility

Upload Details

Uploaded via as Apple Keynote

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />
  • <br />

Programing for the iPhone Programing for the iPhone Presentation Transcript

  • The iPhone and the SDK Mike Qaissaunee mqaissaunee@brookdalecc.edu http://q-ontech.blogspot.com www.twitter.com/mqaissaunee www.slideshare.net/mqaissaunee
  • 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 Triangulation
  • What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface
  • What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors
  • What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard
  • What is the iPhone? • Apple’s Smartphone • More than a Phone? • Built in Accelerometer • GPS or Position Triangulation • Multi Touch Interface • Sensors • Keyboard • Safari
  • 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
  • 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
  • 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
  • iPhone Overview • Smart Phone + – iPod (Widescreen) – Wireless Internet Communication Device – Wifi 802.11 b/g – PDA – Computer (OS X) – Camera – App Store
  • 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
  • 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!
  • iPhone SDK
  • iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
  • iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
  • iPhone SDK iPhone SDK includes five powerful iPhone programming tools 1.XCODE • Professional text editor • Debugger • GCC compiler
  • 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
  • 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
  • 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 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
  • Media Layer provides graphics and media technologies for creating advanced multimedia experiences – Graphics Technologies – Core Audio – OpenAL – Video Technologies
  • Core Services Provides fundamental or core system services that all applications use – Address Book – Core Location – CFNetwork – Security – SQLite
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • Classes of iPhone Applications • We can define three types of iPhone applications: – Productivity – Utility – Immersive
  • 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
  • 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
  • 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.
  • iPhone Developer University Program The iPhone Developer University Program includes: • iPhone SDK • iPhone Dev Center Resources
  • 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 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
  • Join us Summer 2009 in Phoenix watch ate-con.org for details