SlideShare una empresa de Scribd logo
1 de 21
IOS
Platform Architecture & Development Options
Overview
• Introduction
• iOS Architecture
   • COCOA Touch Layer
   • Media Layer
   • Core Services Layer
   • Core OS Layer
• Platform Characteristics
• Native Apps vs. Web Apps vs. Hybrid Apps
• iOS Application Development Options
Introduction
• iOS is Apple’s mobile operating system.
• Originally released for iPhone and iPod Touch, it has been
  extended to support devices like iPad and Apple TV.
• Derived from OSX, with which it shares the Darwin
  foundation and is therefore a UNIX-like operating system
  by nature.
• Darwin is an open source POSIX compliant operating
  system released by Apple Inc. in 2000.
• The user-interface of iOS is based on concept of direct
  manipulation, using multi-touch gestures.
History
• Unveiled with the iPhone at the MacWorld Conference &
  Expo, January 9, 2007 and released in June, 2007.
• On March 6, 2008, Apple released the first beta of native
  Software Development Kit (SDK), along with a new name
  for the operating system : “iPhone OS”.
• In June, 2010, Apple rebranded iPhone OS as “iOS”.
 Version                Build                      Release Date         Highest version for

 3.1.3 (Discontinued)   7E18                       February 2, 2010     iPhone, iPod Touch

 4.2.1 (Discontinued)   8C148                      November 22, 2010    iPhone 3G, iPod Touch

 5.1.1 (Discontinued)   9B206                      May 7, 2012          iPod Touch, iPad

 5.1 (Current)          10A406E                    September 24, 2012   Apple TV

 6.0 (Current)          10A403 (Golden Master) ,   September 12, 2012   iPhone 3GS, iPhone 4,
                        10A405, 10A406                                  iPhone 4S, iPhone 5, iPod
                                                                        Touch, iPad, iPad 2
iDevices
• iPhone & iPod
   • Display: 3.5in, 4in
   • Resolution: 320x480(HVGA) at 163ppi, 640x960 at 326ppi,
       1136x640
   •   Aspect Ratio: 2:3, 16:9
   •   Storage: 4GB, 8GB, 16GB, 32GB, 64GB
   •   Processor: 620MHz, 833MHz, 1GHz Apple A4, 1GHz dual-core
       Apple A5, Apple A6
   •   Bus Frequency and width: 103MHz (32-bit), 100MHz (32-bit),
       100MHz (64-bit), 250MHz (64-bit)
   •   Memory: 128MB, 256MB, 512MB, 1GB
   •   Devices: iPhone 3G, iPhone 3GS, iPhone 4, iPhone 4S, iPhone
       5, iPod Touch
• iPad
    • Display: 9.7in, 4:3 aspect ratio
    • Resolution: 1024x768
    • Storage: 16GB, 32GB, 64GB
    • Processor: 1GHz ARM Cortex-A8, 1GHz dual-core ARM
      Cortex-A9
    • Bus Frequency and width: 100MHz (64-bit), 250MHz (64-bit)
    • Memory: 256MB, 512MB, 1GB
    • Devices: iPad, iPad2, iPad3
• Apple TV
    • Storage: 8GB
    • Memory: 256MB, 512MB
    • Devices: Apple TV 4.0, Apple TV 5.0
Hardware
• Proximity Sensor
       deactivates the display and touchscreen when the
       device is brought near the face during a call.
• 3-axis Accelerometer
       senses the orientation of the phone and changes the
       display accordingly.
• Ambient Light Sensor
       adjusts the display brightness which in turn saves
       battery power.
• Gyroscopic Sensor
       enhances the perception of how the phone is
       moved.
Platform Characteristics
• The Display is Paramount regardless of its size
• Device Orientation can change
• Apps Respond to Gestures, Not Clicks
• People Interact with One App at a Time
• Preferences are available in Settings
• Onscreen User Help Is Minimal
• Most iOS Apps Have a Single Window
• Two Types of Software Run in iOS
    • iOS Apps
    • Web Content

• Safari on iOS Provides the Web Interface
iOS Architecture
Cocoa Touch Layer
•   Auto Layout
•   Storyboards
•   Document Support
•   Multitasking
•   Printing
•   UI State Preservation
•   Apple Push Notification Service
•   Local Notifications
•   Gesture Recognizers
•   Peer-to-Peer Services
    • GameKit framework
• Standard System View Controllers
  • UINavigatoinController, UITabBarController, UIPageView Controller
    etc.
• External Display Support
Cocoa Touch Frameworks
• AddressBookUI.framework
• EventKitUI.framework: calendar- based events
• GameKit.framework
• iAd.framework
• MapKit.framework
• MessageUI.framework
• Twitter.framework
• UIKit.framework
      •   Accelerometer data
      •   The built-in camera (where present)
      •   The user’s photo library
      •   Device name and model information
      •   Battery state information
      •   Proximity sensor information
Media Layer
• Graphics Technologies
     •   Core Graphics (Quartz)
     •   Core Animation
     •   Core Image
     •   OpenGL ES and GLKit
     •   Core Text
     •   Image I/O
     •   Assets Library framework
• Audio Technologies
     •   Media Layer framework
     •   AV Foundation framework
     •   Open AL
     •   Core Audio framework
     •   Supported file formats: AAC Protected (MP4), ALAC, A-law, IMA/ADPCM
         (IMA4), Linear PCM, µ-law, DVI/Intel IMA ADPCM, Microsoft GSM 6.10,
         AES3-2003
• Video Technologies
        •   UIImagePickerController
        •   Media Player framework
        •   AV Foundation framework
        •   Core Media
        •   Supported file formats: .mov, .mp4, .m4v, .3gp
        •   Compression Standards: H.264 video, up to 1.5Mbps, 640 by 480 pixels

                              H.264 video, up to 768Kbps, 320 by 240 pixels
                              MPEG-4 video, up to 2.5 Mbps, 640 by 480 pixels


• AirPlay:     AirPlay is a technology that lets your application stream audio to Apple
 TV and to third-party AirPlay speakers and receivers. Support is built-in in:
       • AV Foundation framework
       • Core Audio
Core Services Layer
• High Level Features        • Frameworks
                                •   Accounts Framework
  • iCloud Storage              •   Address Book Framework
  • Automatic Reference         •   Ad Support Framework
    Counting                    •   CFNetwork Framework
                                •   Core Data Framework
  • Block Objects
                                •   Core Foundation Framework
  • Data Protection             •   Core Location Framework
  • File-Sharing Support        •   Core Media Framework
                                •   Core Motion Framework
  • Grand Central Dispatch      •   Core Telephony Framework
  • In-App Purchase             •   Event Kit Framework
                                •   Foundation Framework
  • SQLite
                                •   Newsstand Kit Framework
  • XML Support                 •   Pass Kit Framework
                                •   Quick Look Framework
                                •   Social Framework
                                •   Store Kit Framework
                                •   System Configuration
                                    Framework
Core OS Layer
• Frameworks
   •   Accelerate Framework
   •   Core Bluetooth Framework
   •   External Accessory Framework
   •   Generic Security Services Framework
   •   Security Framework
   •   System
 • LibSystem library
   •   Threading (POSIX threads)
   •   Networking (BSD sockets)
   •   File-system access
   •   Standard I/O
   •   Bonjour and DNS services
   •   Locale information
   •   Memory allocation
   •   Math computations
Native Apps vs. Web Apps vs. Hybrid
 Apps

• Criteria Aspects         •What is a Web App?
  • User Interface
  • Development
  • Capabilities
                           •What is a Native App?
  • Monetization
  • Installation/Updates
  • Versioning
  • Strengths
                           •What is a Hybrid App?
  • Weaknesses
How to decide?
 • Does the mobile app require the use of any special
   device features (i.e., camera, the camera’s flash,
   accelerometer, etc.)?
 • What’s my budget?
 • Does the mobile app need to be Internet-enabled?
 • Do I need to target all mobile devices or just certain
   devices?
 • What programming languages do I already know?
 • How important is speed and performance?
 • How will this app be monetized effectively?
Development Options

  • Apple Xcode: objective-C
  • Ansca Corona: Lua
  • DragonFire: C, C++
  • Novell Mono Touch: C#
  • Genuitec MobiOne: JavaScript/HTML/CSS
  • Appcelerator Titanium Mobile:
    JavaScript/HTML/CSS
  • RhoMobile: JavaScript/HTML/CSS
  • PhoneGap: JavaScript/HTML/CSS
  • ApplicationCraft
iOS SDK
• Tools shipped with SDK:
   • Xcode
   • Professional text editor
   • Debugger
   • GCC Compiler
 • Interface Builder
   • For creating user interface
 • Instruments
   • For optimizing applications
 • Dash Code
   • For creating web applications for safari
 • iPhone simulator
Questions?

Más contenido relacionado

La actualidad más candente

android architecture
android architectureandroid architecture
android architecture
Aashita Gupta
 
Introduction to iOS Apps Development
Introduction to iOS Apps DevelopmentIntroduction to iOS Apps Development
Introduction to iOS Apps Development
Prof. Erwin Globio
 
Icloud seminar report
Icloud seminar reportIcloud seminar report
Icloud seminar report
Richa Dewani
 

La actualidad más candente (20)

Android Components
Android ComponentsAndroid Components
Android Components
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
Mobile operating system (os)
Mobile operating system (os)Mobile operating system (os)
Mobile operating system (os)
 
Mobile application testing tutorial
Mobile application testing tutorialMobile application testing tutorial
Mobile application testing tutorial
 
ppt based on android technology with great animations
ppt based on android technology with great animationsppt based on android technology with great animations
ppt based on android technology with great animations
 
Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
Android Architecture.pptx
Android Architecture.pptxAndroid Architecture.pptx
Android Architecture.pptx
 
Android platform
Android platform Android platform
Android platform
 
Apple iOS
Apple iOSApple iOS
Apple iOS
 
Mobile application testing
Mobile application testingMobile application testing
Mobile application testing
 
Introduction to Mobile Development
Introduction to Mobile DevelopmentIntroduction to Mobile Development
Introduction to Mobile Development
 
android architecture
android architectureandroid architecture
android architecture
 
Introduction to iOS Apps Development
Introduction to iOS Apps DevelopmentIntroduction to iOS Apps Development
Introduction to iOS Apps Development
 
Firebase
FirebaseFirebase
Firebase
 
Android Operating System (Androrid OS)
Android Operating System (Androrid OS)Android Operating System (Androrid OS)
Android Operating System (Androrid OS)
 
iCloud by Apple
iCloud by AppleiCloud by Apple
iCloud by Apple
 
Android ppt
Android pptAndroid ppt
Android ppt
 
Icloud seminar report
Icloud seminar reportIcloud seminar report
Icloud seminar report
 
Presentation on Android operating system
Presentation on Android operating systemPresentation on Android operating system
Presentation on Android operating system
 
Android
Android Android
Android
 

Destacado

Sample business plan presentation(2)
Sample business plan presentation(2)Sample business plan presentation(2)
Sample business plan presentation(2)
smarty23b
 
Business plan_Restaurant
Business plan_RestaurantBusiness plan_Restaurant
Business plan_Restaurant
Arnav Soni
 
Business plan coffee shop
Business plan coffee shopBusiness plan coffee shop
Business plan coffee shop
Amol Kadu
 
Sample Business Proposal Presentation
Sample Business Proposal PresentationSample Business Proposal Presentation
Sample Business Proposal Presentation
Daryll Cabagay
 

Destacado (20)

What Is Theater
What Is TheaterWhat Is Theater
What Is Theater
 
Apple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating systemApple iOS - A modern way to mobile operating system
Apple iOS - A modern way to mobile operating system
 
My Internet Cafe
My Internet CafeMy Internet Cafe
My Internet Cafe
 
Apple iOS Report
Apple iOS ReportApple iOS Report
Apple iOS Report
 
Theater Arts
Theater ArtsTheater Arts
Theater Arts
 
History of iOS
History of iOSHistory of iOS
History of iOS
 
Theatre styles
Theatre styles Theatre styles
Theatre styles
 
Apple iOS Introduction
Apple iOS IntroductionApple iOS Introduction
Apple iOS Introduction
 
Presentation on iOS
Presentation on iOSPresentation on iOS
Presentation on iOS
 
Theatre
TheatreTheatre
Theatre
 
Introduction to drama, theater, and culture
Introduction to drama, theater, and cultureIntroduction to drama, theater, and culture
Introduction to drama, theater, and culture
 
Ios operating system
Ios operating systemIos operating system
Ios operating system
 
SAMPLE BUSINESS PLAN
SAMPLE BUSINESS PLANSAMPLE BUSINESS PLAN
SAMPLE BUSINESS PLAN
 
Sample business plan presentation(2)
Sample business plan presentation(2)Sample business plan presentation(2)
Sample business plan presentation(2)
 
Business plan_Restaurant
Business plan_RestaurantBusiness plan_Restaurant
Business plan_Restaurant
 
Sample Business Plan Presentation
Sample Business Plan PresentationSample Business Plan Presentation
Sample Business Plan Presentation
 
Business plan coffee shop
Business plan coffee shopBusiness plan coffee shop
Business plan coffee shop
 
Business plan for fast food restaurant
Business plan for fast food restaurantBusiness plan for fast food restaurant
Business plan for fast food restaurant
 
Restaurant Business Plan Presentation
Restaurant Business Plan PresentationRestaurant Business Plan Presentation
Restaurant Business Plan Presentation
 
Sample Business Proposal Presentation
Sample Business Proposal PresentationSample Business Proposal Presentation
Sample Business Proposal Presentation
 

Similar a iOS platform

HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
davyjones
 
콘텐츠 플랫폼 구조 분석
콘텐츠 플랫폼 구조 분석콘텐츠 플랫폼 구조 분석
콘텐츠 플랫폼 구조 분석
Jaehyeuk Oh
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
Chris Morrell
 
Никита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS developmentНикита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS development
DataArt
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
Maulik Bamania
 
Android platform
Android platformAndroid platform
Android platform
maya_slides
 
Zadar Developers Hub - Windows Phone Development
Zadar Developers Hub - Windows Phone DevelopmentZadar Developers Hub - Windows Phone Development
Zadar Developers Hub - Windows Phone Development
Niko Vrdoljak
 

Similar a iOS platform (20)

Никита Корчагин - Introduction to Apple iOS Development.
Никита Корчагин - Introduction to Apple iOS Development.Никита Корчагин - Introduction to Apple iOS Development.
Никита Корчагин - Introduction to Apple iOS Development.
 
HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?HTML5 or Android for Mobile Development?
HTML5 or Android for Mobile Development?
 
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There TodayHTML5 is the Future of Mobile, PhoneGap Takes You There Today
HTML5 is the Future of Mobile, PhoneGap Takes You There Today
 
iPhone OS: The Next Killer Platform
iPhone OS: The Next Killer PlatformiPhone OS: The Next Killer Platform
iPhone OS: The Next Killer Platform
 
Android Introduction
Android IntroductionAndroid Introduction
Android Introduction
 
콘텐츠 플랫폼 구조 분석
콘텐츠 플랫폼 구조 분석콘텐츠 플랫폼 구조 분석
콘텐츠 플랫폼 구조 분석
 
Mobile App Development
Mobile App DevelopmentMobile App Development
Mobile App Development
 
Android quick talk
Android quick talkAndroid quick talk
Android quick talk
 
Никита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS developmentНикита Корчагин - Introduction to iOS development
Никита Корчагин - Introduction to iOS development
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
 
Android
AndroidAndroid
Android
 
Xamarin.Mac Seminar
Xamarin.Mac SeminarXamarin.Mac Seminar
Xamarin.Mac Seminar
 
Android
Android Android
Android
 
How to become iPhone developer
How to become iPhone developerHow to become iPhone developer
How to become iPhone developer
 
Android
AndroidAndroid
Android
 
CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany CM WebClient CA Expo Mannheim Germany
CM WebClient CA Expo Mannheim Germany
 
Synapse india reviews on mobile application development
Synapse india reviews on mobile application developmentSynapse india reviews on mobile application development
Synapse india reviews on mobile application development
 
Android platform
Android platformAndroid platform
Android platform
 
Android the new Mobile Technoogy
Android the new Mobile TechnoogyAndroid the new Mobile Technoogy
Android the new Mobile Technoogy
 
Zadar Developers Hub - Windows Phone Development
Zadar Developers Hub - Windows Phone DevelopmentZadar Developers Hub - Windows Phone Development
Zadar Developers Hub - Windows Phone Development
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Último (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

iOS platform

  • 1. IOS Platform Architecture & Development Options
  • 2. Overview • Introduction • iOS Architecture • COCOA Touch Layer • Media Layer • Core Services Layer • Core OS Layer • Platform Characteristics • Native Apps vs. Web Apps vs. Hybrid Apps • iOS Application Development Options
  • 3. Introduction • iOS is Apple’s mobile operating system. • Originally released for iPhone and iPod Touch, it has been extended to support devices like iPad and Apple TV. • Derived from OSX, with which it shares the Darwin foundation and is therefore a UNIX-like operating system by nature. • Darwin is an open source POSIX compliant operating system released by Apple Inc. in 2000. • The user-interface of iOS is based on concept of direct manipulation, using multi-touch gestures.
  • 4. History • Unveiled with the iPhone at the MacWorld Conference & Expo, January 9, 2007 and released in June, 2007. • On March 6, 2008, Apple released the first beta of native Software Development Kit (SDK), along with a new name for the operating system : “iPhone OS”. • In June, 2010, Apple rebranded iPhone OS as “iOS”. Version Build Release Date Highest version for 3.1.3 (Discontinued) 7E18 February 2, 2010 iPhone, iPod Touch 4.2.1 (Discontinued) 8C148 November 22, 2010 iPhone 3G, iPod Touch 5.1.1 (Discontinued) 9B206 May 7, 2012 iPod Touch, iPad 5.1 (Current) 10A406E September 24, 2012 Apple TV 6.0 (Current) 10A403 (Golden Master) , September 12, 2012 iPhone 3GS, iPhone 4, 10A405, 10A406 iPhone 4S, iPhone 5, iPod Touch, iPad, iPad 2
  • 6. • iPhone & iPod • Display: 3.5in, 4in • Resolution: 320x480(HVGA) at 163ppi, 640x960 at 326ppi, 1136x640 • Aspect Ratio: 2:3, 16:9 • Storage: 4GB, 8GB, 16GB, 32GB, 64GB • Processor: 620MHz, 833MHz, 1GHz Apple A4, 1GHz dual-core Apple A5, Apple A6 • Bus Frequency and width: 103MHz (32-bit), 100MHz (32-bit), 100MHz (64-bit), 250MHz (64-bit) • Memory: 128MB, 256MB, 512MB, 1GB • Devices: iPhone 3G, iPhone 3GS, iPhone 4, iPhone 4S, iPhone 5, iPod Touch
  • 7. • iPad • Display: 9.7in, 4:3 aspect ratio • Resolution: 1024x768 • Storage: 16GB, 32GB, 64GB • Processor: 1GHz ARM Cortex-A8, 1GHz dual-core ARM Cortex-A9 • Bus Frequency and width: 100MHz (64-bit), 250MHz (64-bit) • Memory: 256MB, 512MB, 1GB • Devices: iPad, iPad2, iPad3 • Apple TV • Storage: 8GB • Memory: 256MB, 512MB • Devices: Apple TV 4.0, Apple TV 5.0
  • 8. Hardware • Proximity Sensor deactivates the display and touchscreen when the device is brought near the face during a call. • 3-axis Accelerometer senses the orientation of the phone and changes the display accordingly. • Ambient Light Sensor adjusts the display brightness which in turn saves battery power. • Gyroscopic Sensor enhances the perception of how the phone is moved.
  • 9. Platform Characteristics • The Display is Paramount regardless of its size • Device Orientation can change • Apps Respond to Gestures, Not Clicks • People Interact with One App at a Time • Preferences are available in Settings • Onscreen User Help Is Minimal • Most iOS Apps Have a Single Window • Two Types of Software Run in iOS • iOS Apps • Web Content • Safari on iOS Provides the Web Interface
  • 11. Cocoa Touch Layer • Auto Layout • Storyboards • Document Support • Multitasking • Printing • UI State Preservation • Apple Push Notification Service • Local Notifications • Gesture Recognizers • Peer-to-Peer Services • GameKit framework • Standard System View Controllers • UINavigatoinController, UITabBarController, UIPageView Controller etc. • External Display Support
  • 12. Cocoa Touch Frameworks • AddressBookUI.framework • EventKitUI.framework: calendar- based events • GameKit.framework • iAd.framework • MapKit.framework • MessageUI.framework • Twitter.framework • UIKit.framework • Accelerometer data • The built-in camera (where present) • The user’s photo library • Device name and model information • Battery state information • Proximity sensor information
  • 13. Media Layer • Graphics Technologies • Core Graphics (Quartz) • Core Animation • Core Image • OpenGL ES and GLKit • Core Text • Image I/O • Assets Library framework • Audio Technologies • Media Layer framework • AV Foundation framework • Open AL • Core Audio framework • Supported file formats: AAC Protected (MP4), ALAC, A-law, IMA/ADPCM (IMA4), Linear PCM, µ-law, DVI/Intel IMA ADPCM, Microsoft GSM 6.10, AES3-2003
  • 14. • Video Technologies • UIImagePickerController • Media Player framework • AV Foundation framework • Core Media • Supported file formats: .mov, .mp4, .m4v, .3gp • Compression Standards: H.264 video, up to 1.5Mbps, 640 by 480 pixels H.264 video, up to 768Kbps, 320 by 240 pixels MPEG-4 video, up to 2.5 Mbps, 640 by 480 pixels • AirPlay: AirPlay is a technology that lets your application stream audio to Apple TV and to third-party AirPlay speakers and receivers. Support is built-in in: • AV Foundation framework • Core Audio
  • 15. Core Services Layer • High Level Features • Frameworks • Accounts Framework • iCloud Storage • Address Book Framework • Automatic Reference • Ad Support Framework Counting • CFNetwork Framework • Core Data Framework • Block Objects • Core Foundation Framework • Data Protection • Core Location Framework • File-Sharing Support • Core Media Framework • Core Motion Framework • Grand Central Dispatch • Core Telephony Framework • In-App Purchase • Event Kit Framework • Foundation Framework • SQLite • Newsstand Kit Framework • XML Support • Pass Kit Framework • Quick Look Framework • Social Framework • Store Kit Framework • System Configuration Framework
  • 16. Core OS Layer • Frameworks • Accelerate Framework • Core Bluetooth Framework • External Accessory Framework • Generic Security Services Framework • Security Framework • System • LibSystem library • Threading (POSIX threads) • Networking (BSD sockets) • File-system access • Standard I/O • Bonjour and DNS services • Locale information • Memory allocation • Math computations
  • 17. Native Apps vs. Web Apps vs. Hybrid Apps • Criteria Aspects •What is a Web App? • User Interface • Development • Capabilities •What is a Native App? • Monetization • Installation/Updates • Versioning • Strengths •What is a Hybrid App? • Weaknesses
  • 18. How to decide? • Does the mobile app require the use of any special device features (i.e., camera, the camera’s flash, accelerometer, etc.)? • What’s my budget? • Does the mobile app need to be Internet-enabled? • Do I need to target all mobile devices or just certain devices? • What programming languages do I already know? • How important is speed and performance? • How will this app be monetized effectively?
  • 19. Development Options • Apple Xcode: objective-C • Ansca Corona: Lua • DragonFire: C, C++ • Novell Mono Touch: C# • Genuitec MobiOne: JavaScript/HTML/CSS • Appcelerator Titanium Mobile: JavaScript/HTML/CSS • RhoMobile: JavaScript/HTML/CSS • PhoneGap: JavaScript/HTML/CSS • ApplicationCraft
  • 20. iOS SDK • Tools shipped with SDK: • Xcode • Professional text editor • Debugger • GCC Compiler • Interface Builder • For creating user interface • Instruments • For optimizing applications • Dash Code • For creating web applications for safari • iPhone simulator