SlideShare a Scribd company logo
iPhone	
  OS	
  Pla,orm	
  

            Jussi	
  Pohjolainen	
  
Tampere	
  University	
  of	
  Applied	
  Sciences	
  
iPhone	
  OS	
  
•  Mobile	
  pla,orm	
  developed	
  by	
  
   Apple	
  for	
  iPhone	
  and	
  iPod	
  Touch	
  
•  Based	
  on	
  Mac	
  OS	
  X	
  
•  Development	
  kit	
  only	
  available	
  for	
  
   Mac	
  OS	
  X	
  
•  Programming	
  Language:	
  ObjecFve-­‐
   C	
  
•  App	
  distribuFon	
  only	
  via	
  Apple’s	
  
   App	
  Store	
  
iPhone	
  Phenomenon	
  
•    Touch	
  screen	
  
•    Screen	
  size	
  
•    UI	
  and	
  services	
  
•    Service	
  usage	
  
•    Mobile	
  internet	
  
•    "Easy"	
  development	
  
•    App	
  Store	
  
•    Huge	
  impact!	
  
iPhone	
  CriFsism	
  
Developer's	
  view	
  
•  One	
  pla,orm,	
  one	
  screen	
  size 	
  	
  
    –  Although	
  different	
  OS	
  versions	
  and	
  iPad	
  
•  NaFve	
  language	
  Obj-­‐C	
  
•  App	
  Store	
  
NaFve	
  vs.	
  Web	
  
•  Na#ve	
  apps	
  
   –  DistribuFon	
  only	
  with	
  the	
  
      App	
  Store	
  
•  Web	
  apps	
  
   –  DistribuFon	
  via	
  the	
  Internet	
  
   –  Very	
  close	
  to	
  naFve	
  
      experience	
  
App	
  Store	
  
•  App	
  Store	
  opened	
  in	
  July	
  2008	
  
•  Huge	
  success	
  
•  Very	
  easy	
  to	
  use	
  
    –  iTunes	
  legacy,	
  iPod	
  user's	
  familiar	
  with	
  the	
  store	
  
•  "Apple-­‐tax",	
  Apple	
  charges	
  30%	
  of	
  income	
  
•  Apple	
  checks	
  if	
  your	
  app	
  is	
  qualified	
  for	
  App	
  
   Store	
  
App	
  Store	
  
•  Usually	
  games	
  sell	
  well	
  
•  Most	
  of	
  the	
  apps	
  very	
  simple	
  
    –  iFart	
  –	
  phenomenon	
  
•  Pricing	
  usually	
  from	
  0.79€	
  to	
  9.99€	
  
•  Lot	
  of	
  free	
  soeware	
  
•  Lot	
  of	
  apps,	
  how	
  to	
  adverFse	
  your	
  app?	
  
    –  Top	
  lists	
  
    –  Price	
  cut	
  
NaFve	
  App	
  PossibiliFes	
  
•    Threading	
                        •  Core	
  Audio,	
  OpenAL	
  
•    Networking	
                       •  MediaPlayer	
  
•    File	
  System	
  Access	
            Framework	
  
•    Locale	
                           •  Accelerometer	
  
•    Security	
  Framework	
            •  Access	
  to	
  	
  
•    SQLite	
  Library	
                    –  built-­‐in	
  camera,	
  photos	
  	
  
                                            –  addressbook,	
  web	
  
•    XML	
  Libraries	
  
                                        •  Core	
  LocaFon	
  
•    Quartz,	
  Core	
  AnimaFon,	
        Framework	
  
     OpenGL	
  ES	
  
iPhone	
  OS	
  3.0	
  
•    In	
  App	
  Purchase	
  
•    External	
  Accessory	
  Framework	
  
•    Peer	
  to	
  Peer	
  ConnecFvity	
  
•    Maps	
  
•    iPod	
  Library	
  Access	
  
LimitaFons	
  
•  No	
  mulFtasking	
  for	
  non-­‐Apple	
  apps	
  
    –  Importance	
  of	
  saving	
  state!	
  
    –  Push	
  NoFficaFon	
  Service	
  
•  App	
  Store	
  
    –  Apple's	
  limitaFon	
  	
  
    –  DistribuFon	
  limitaFon	
  
Developer	
  Program's	
  
•  Standard	
  Program,	
  99	
  €	
  /	
  year	
  
•  Enterprise	
  Program,	
  299	
  €	
  /	
  year	
  
•  University	
  Program,	
  free	
  
Developer	
  Tools:	
  Xcode	
  
Developer	
  Tools:	
  Interface	
  Builder	
  

More Related Content

What's hot

iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
Jonathan Engelsma
 
ITFT_Micro browser
ITFT_Micro browserITFT_Micro browser
ITFT_Micro browser
Shilpa Sharma
 
Beginning iOS Development with Swift
Beginning iOS Development with SwiftBeginning iOS Development with Swift
Beginning iOS Development with Swift
TurnToTech
 
A voice controlled streaming jukebox based on ibm bluemix
A voice controlled streaming jukebox based on ibm bluemixA voice controlled streaming jukebox based on ibm bluemix
A voice controlled streaming jukebox based on ibm bluemix
Leon Yang
 
Confused - Updating your iPhone to iOS 13 ??
Confused - Updating your iPhone to iOS 13 ??Confused - Updating your iPhone to iOS 13 ??
Confused - Updating your iPhone to iOS 13 ??
iFixScreens
 
Lumia portfolio 2014
Lumia portfolio 2014Lumia portfolio 2014
Lumia portfolio 2014
Branislav Stojanovic
 
Tech Talk
Tech TalkTech Talk
Tech Talk
Edaise Germany
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
Jonathan Engelsma
 
Introduction to tvOS app Development !
Introduction to tvOS app Development !Introduction to tvOS app Development !
Introduction to tvOS app Development !
Snehal Patil
 
Hot tech powerpoint
Hot tech powerpointHot tech powerpoint
Hot tech powerpointsluberda
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014
AuraPlayer
 
Native Device vs. Mobile Web Applications
Native Device vs. Mobile Web ApplicationsNative Device vs. Mobile Web Applications
Native Device vs. Mobile Web Applications
Tim Wright
 
Cross Device Accessibility
Cross Device AccessibilityCross Device Accessibility
Cross Device Accessibility
Chris Mills
 
PhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony RumseyPhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony Rumsey
AEM HUB
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Axel Buerkle
 
Fitting content to domain
Fitting content to domainFitting content to domain
Fitting content to domain
Ekta Rohra Jafri
 
Mobile Lean UX
Mobile Lean UXMobile Lean UX
Mobile Lean UX
Blazing Cloud
 
Raspberry pi Update - Encourage your IOT
Raspberry pi Update - Encourage your IOTRaspberry pi Update - Encourage your IOT
Raspberry pi Update - Encourage your IOT
LF Events
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
Veronica Alejandro
 
UNCCAUSE 2013-Deploying Wireless Projection with Apple TV
UNCCAUSE 2013-Deploying Wireless Projection with Apple TVUNCCAUSE 2013-Deploying Wireless Projection with Apple TV
UNCCAUSE 2013-Deploying Wireless Projection with Apple TVEveretteGAllen
 

What's hot (20)

iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 7)
 
ITFT_Micro browser
ITFT_Micro browserITFT_Micro browser
ITFT_Micro browser
 
Beginning iOS Development with Swift
Beginning iOS Development with SwiftBeginning iOS Development with Swift
Beginning iOS Development with Swift
 
A voice controlled streaming jukebox based on ibm bluemix
A voice controlled streaming jukebox based on ibm bluemixA voice controlled streaming jukebox based on ibm bluemix
A voice controlled streaming jukebox based on ibm bluemix
 
Confused - Updating your iPhone to iOS 13 ??
Confused - Updating your iPhone to iOS 13 ??Confused - Updating your iPhone to iOS 13 ??
Confused - Updating your iPhone to iOS 13 ??
 
Lumia portfolio 2014
Lumia portfolio 2014Lumia portfolio 2014
Lumia portfolio 2014
 
Tech Talk
Tech TalkTech Talk
Tech Talk
 
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
iOS Bootcamp: learning to create awesome apps on iOS using Swift (Lecture 09)
 
Introduction to tvOS app Development !
Introduction to tvOS app Development !Introduction to tvOS app Development !
Introduction to tvOS app Development !
 
Hot tech powerpoint
Hot tech powerpointHot tech powerpoint
Hot tech powerpoint
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014
 
Native Device vs. Mobile Web Applications
Native Device vs. Mobile Web ApplicationsNative Device vs. Mobile Web Applications
Native Device vs. Mobile Web Applications
 
Cross Device Accessibility
Cross Device AccessibilityCross Device Accessibility
Cross Device Accessibility
 
PhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony RumseyPhoneGap Enterprise Viewer by Anthony Rumsey
PhoneGap Enterprise Viewer by Anthony Rumsey
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
 
Fitting content to domain
Fitting content to domainFitting content to domain
Fitting content to domain
 
Mobile Lean UX
Mobile Lean UXMobile Lean UX
Mobile Lean UX
 
Raspberry pi Update - Encourage your IOT
Raspberry pi Update - Encourage your IOTRaspberry pi Update - Encourage your IOT
Raspberry pi Update - Encourage your IOT
 
Mobile operating systems
Mobile operating systemsMobile operating systems
Mobile operating systems
 
UNCCAUSE 2013-Deploying Wireless Projection with Apple TV
UNCCAUSE 2013-Deploying Wireless Projection with Apple TVUNCCAUSE 2013-Deploying Wireless Projection with Apple TV
UNCCAUSE 2013-Deploying Wireless Projection with Apple TV
 

Viewers also liked

Graphics, Threads and HTTPConnections in MIDLets
Graphics, Threads and HTTPConnections in MIDLetsGraphics, Threads and HTTPConnections in MIDLets
Graphics, Threads and HTTPConnections in MIDLetsJussi Pohjolainen
 
Introduction to Mobile Programming 2 - course
Introduction to Mobile Programming 2 - courseIntroduction to Mobile Programming 2 - course
Introduction to Mobile Programming 2 - courseJussi Pohjolainen
 
Android Security, Signing and Publishing
Android Security, Signing and PublishingAndroid Security, Signing and Publishing
Android Security, Signing and PublishingJussi Pohjolainen
 
MIDP GUI Development: Alert, List, Form, TextBox
MIDP GUI Development: Alert, List, Form, TextBoxMIDP GUI Development: Alert, List, Form, TextBox
MIDP GUI Development: Alert, List, Form, TextBoxJussi Pohjolainen
 
MIDP: Form Custom and Image Items
MIDP: Form Custom and Image ItemsMIDP: Form Custom and Image Items
MIDP: Form Custom and Image ItemsJussi Pohjolainen
 
.NET Multithreading and File I/O
.NET Multithreading and File I/O.NET Multithreading and File I/O
.NET Multithreading and File I/OJussi Pohjolainen
 
Introduction to Web Standards
Introduction to Web StandardsIntroduction to Web Standards
Introduction to Web StandardsJussi Pohjolainen
 
iOS: Frameworks and Delegation
iOS: Frameworks and DelegationiOS: Frameworks and Delegation
iOS: Frameworks and DelegationJussi Pohjolainen
 
Introduction to Web Application Course
Introduction to Web Application CourseIntroduction to Web Application Course
Introduction to Web Application CourseJussi Pohjolainen
 
libGDX: Scene2D
libGDX: Scene2DlibGDX: Scene2D
libGDX: Scene2D
Jussi Pohjolainen
 
iPhone University Developer Program
iPhone University Developer ProgramiPhone University Developer Program
iPhone University Developer Program
Jussi Pohjolainen
 

Viewers also liked (20)

Graphics, Threads and HTTPConnections in MIDLets
Graphics, Threads and HTTPConnections in MIDLetsGraphics, Threads and HTTPConnections in MIDLets
Graphics, Threads and HTTPConnections in MIDLets
 
CSS and Layout
CSS and LayoutCSS and Layout
CSS and Layout
 
Introduction to Mobile Programming 2 - course
Introduction to Mobile Programming 2 - courseIntroduction to Mobile Programming 2 - course
Introduction to Mobile Programming 2 - course
 
Android Security, Signing and Publishing
Android Security, Signing and PublishingAndroid Security, Signing and Publishing
Android Security, Signing and Publishing
 
MIDP GUI Development: Alert, List, Form, TextBox
MIDP GUI Development: Alert, List, Form, TextBoxMIDP GUI Development: Alert, List, Form, TextBox
MIDP GUI Development: Alert, List, Form, TextBox
 
Intro to MIDP Development
Intro to MIDP DevelopmentIntro to MIDP Development
Intro to MIDP Development
 
MIDP: Game API
MIDP: Game APIMIDP: Game API
MIDP: Game API
 
MIDP: Form Custom and Image Items
MIDP: Form Custom and Image ItemsMIDP: Form Custom and Image Items
MIDP: Form Custom and Image Items
 
.NET Multithreading and File I/O
.NET Multithreading and File I/O.NET Multithreading and File I/O
.NET Multithreading and File I/O
 
iPhone: Http Connection
iPhone: Http ConnectioniPhone: Http Connection
iPhone: Http Connection
 
Introduction to Web Standards
Introduction to Web StandardsIntroduction to Web Standards
Introduction to Web Standards
 
Johdatus olio-ohjelmointiin
Johdatus olio-ohjelmointiinJohdatus olio-ohjelmointiin
Johdatus olio-ohjelmointiin
 
C++: Interface as Concept
C++: Interface as ConceptC++: Interface as Concept
C++: Interface as Concept
 
MIDP: Persistant Storage
MIDP: Persistant StorageMIDP: Persistant Storage
MIDP: Persistant Storage
 
iOS: Frameworks and Delegation
iOS: Frameworks and DelegationiOS: Frameworks and Delegation
iOS: Frameworks and Delegation
 
Introduction to Web Application Course
Introduction to Web Application CourseIntroduction to Web Application Course
Introduction to Web Application Course
 
libGDX: Scene2D
libGDX: Scene2DlibGDX: Scene2D
libGDX: Scene2D
 
JavaScript Inheritance
JavaScript InheritanceJavaScript Inheritance
JavaScript Inheritance
 
iPhone University Developer Program
iPhone University Developer ProgramiPhone University Developer Program
iPhone University Developer Program
 
XAMPP
XAMPPXAMPP
XAMPP
 

Similar to iPhone OS Platform

iOS App Development and Marketing
iOS App Development and MarketingiOS App Development and Marketing
iOS App Development and Marketing
Changwon National University
 
iPhone OS: The Next Killer Platform
iPhone OS: The Next Killer PlatformiPhone OS: The Next Killer Platform
iPhone OS: The Next Killer Platform
Christopher Bartling
 
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...Damian OSuilleabhain
 
Introduction to iOS Development
Introduction to iOS DevelopmentIntroduction to iOS Development
Introduction to iOS DevelopmentAsim Rais Siddiqui
 
iPhone System
iPhone SystemiPhone System
iPhone System
guestde26cd
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Mobile development
Mobile developmentMobile development
Mobile development
Gonzalo Parra
 
Android OS vs iOS
Android OS vs iOSAndroid OS vs iOS
Android OS vs iOS
Khurt Williams Williams
 
Titanium @ Minnebar
Titanium @ MinnebarTitanium @ Minnebar
Titanium @ Minnebar
Kevin Whinnery
 
A brief intro to RubyMotion
A brief intro to RubyMotionA brief intro to RubyMotion
A brief intro to RubyMotion
Kamil Lelonek
 
How to become iPhone developer
How to become iPhone developerHow to become iPhone developer
How to become iPhone developer
Aleksandra Gavrilovska
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with IonicMaulik Bamania
 
Hybrid app development with ionic
Hybrid app development with ionicHybrid app development with ionic
Hybrid app development with ionic
Wan Muzaffar Wan Hashim
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
IyeTech - Pakistan
 
The future of the mobile web
The future of the mobile webThe future of the mobile web
The future of the mobile webPeter-Paul Koch
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiences
Andy_Gaskell
 
Layer architecture of ios (1)
Layer architecture of ios (1)Layer architecture of ios (1)
Layer architecture of ios (1)
dwipalp
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
jaxarcsig
 

Similar to iPhone OS Platform (20)

iOS App Development and Marketing
iOS App Development and MarketingiOS App Development and Marketing
iOS App Development and Marketing
 
iPhone OS: The Next Killer Platform
iPhone OS: The Next Killer PlatformiPhone OS: The Next Killer Platform
iPhone OS: The Next Killer Platform
 
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
OS3 - Enterprise Ireland - Approaches To I Phone Development & The Irish iPho...
 
Introduction to iOS Development
Introduction to iOS DevelopmentIntroduction to iOS Development
Introduction to iOS Development
 
iPhone System
iPhone SystemiPhone System
iPhone System
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Mobile development
Mobile developmentMobile development
Mobile development
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
Android OS vs iOS
Android OS vs iOSAndroid OS vs iOS
Android OS vs iOS
 
Titanium @ Minnebar
Titanium @ MinnebarTitanium @ Minnebar
Titanium @ Minnebar
 
A brief intro to RubyMotion
A brief intro to RubyMotionA brief intro to RubyMotion
A brief intro to RubyMotion
 
How to become iPhone developer
How to become iPhone developerHow to become iPhone developer
How to become iPhone developer
 
Hybrid mobile application with Ionic
Hybrid mobile application with IonicHybrid mobile application with Ionic
Hybrid mobile application with Ionic
 
iOS platform
iOS platformiOS platform
iOS platform
 
Hybrid app development with ionic
Hybrid app development with ionicHybrid app development with ionic
Hybrid app development with ionic
 
Android vs iOS
Android vs iOSAndroid vs iOS
Android vs iOS
 
The future of the mobile web
The future of the mobile webThe future of the mobile web
The future of the mobile web
 
Joomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiencesJoomla as a mobile App backend - ideas, examples and experiences
Joomla as a mobile App backend - ideas, examples and experiences
 
Layer architecture of ios (1)
Layer architecture of ios (1)Layer architecture of ios (1)
Layer architecture of ios (1)
 
Enterprise iPad Development Without Notes
Enterprise iPad Development Without NotesEnterprise iPad Development Without Notes
Enterprise iPad Development Without Notes
 

More from Jussi Pohjolainen

Moved to Speakerdeck
Moved to SpeakerdeckMoved to Speakerdeck
Moved to Speakerdeck
Jussi Pohjolainen
 
Java Web Services
Java Web ServicesJava Web Services
Java Web Services
Jussi Pohjolainen
 
Box2D and libGDX
Box2D and libGDXBox2D and libGDX
Box2D and libGDX
Jussi Pohjolainen
 
libGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and PreferenceslibGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and Preferences
Jussi Pohjolainen
 
libGDX: Tiled Maps
libGDX: Tiled MapslibGDX: Tiled Maps
libGDX: Tiled Maps
Jussi Pohjolainen
 
libGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame AnimationlibGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame Animation
Jussi Pohjolainen
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDX
Jussi Pohjolainen
 
Advanced JavaScript Development
Advanced JavaScript DevelopmentAdvanced JavaScript Development
Advanced JavaScript DevelopmentJussi Pohjolainen
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
Jussi Pohjolainen
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame AnimationJussi Pohjolainen
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame Animation
Jussi Pohjolainen
 
libGDX: User Input
libGDX: User InputlibGDX: User Input
libGDX: User Input
Jussi Pohjolainen
 
Implementing a Simple Game using libGDX
Implementing a Simple Game using libGDXImplementing a Simple Game using libGDX
Implementing a Simple Game using libGDX
Jussi Pohjolainen
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDX
Jussi Pohjolainen
 
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesCreating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesJussi Pohjolainen
 
Creating Games for Asha - platform
Creating Games for Asha - platformCreating Games for Asha - platform
Creating Games for Asha - platformJussi Pohjolainen
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformJussi Pohjolainen
 

More from Jussi Pohjolainen (20)

Moved to Speakerdeck
Moved to SpeakerdeckMoved to Speakerdeck
Moved to Speakerdeck
 
Java Web Services
Java Web ServicesJava Web Services
Java Web Services
 
Box2D and libGDX
Box2D and libGDXBox2D and libGDX
Box2D and libGDX
 
libGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and PreferenceslibGDX: Screens, Fonts and Preferences
libGDX: Screens, Fonts and Preferences
 
libGDX: Tiled Maps
libGDX: Tiled MapslibGDX: Tiled Maps
libGDX: Tiled Maps
 
libGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame AnimationlibGDX: User Input and Frame by Frame Animation
libGDX: User Input and Frame by Frame Animation
 
Intro to Building Android Games using libGDX
Intro to Building Android Games using libGDXIntro to Building Android Games using libGDX
Intro to Building Android Games using libGDX
 
Advanced JavaScript Development
Advanced JavaScript DevelopmentAdvanced JavaScript Development
Advanced JavaScript Development
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
Introduction to AngularJS
Introduction to AngularJSIntroduction to AngularJS
Introduction to AngularJS
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame Animation
 
libGDX: Simple Frame Animation
libGDX: Simple Frame AnimationlibGDX: Simple Frame Animation
libGDX: Simple Frame Animation
 
libGDX: User Input
libGDX: User InputlibGDX: User Input
libGDX: User Input
 
Implementing a Simple Game using libGDX
Implementing a Simple Game using libGDXImplementing a Simple Game using libGDX
Implementing a Simple Game using libGDX
 
Building Android games using LibGDX
Building Android games using LibGDXBuilding Android games using LibGDX
Building Android games using LibGDX
 
Android Threading
Android ThreadingAndroid Threading
Android Threading
 
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and GesturesCreating Asha Games: Game Pausing, Orientation, Sensors and Gestures
Creating Asha Games: Game Pausing, Orientation, Sensors and Gestures
 
Creating Games for Asha - platform
Creating Games for Asha - platformCreating Games for Asha - platform
Creating Games for Asha - platform
 
Intro to Asha UI
Intro to Asha UIIntro to Asha UI
Intro to Asha UI
 
Intro to Java ME and Asha Platform
Intro to Java ME and Asha PlatformIntro to Java ME and Asha Platform
Intro to Java ME and Asha Platform
 

Recently uploaded

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
Elena Simperl
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...When stars align: studies in data quality, knowledge graphs, and machine lear...
When stars align: studies in data quality, knowledge graphs, and machine lear...
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 

iPhone OS Platform

  • 1. iPhone  OS  Pla,orm   Jussi  Pohjolainen   Tampere  University  of  Applied  Sciences  
  • 2. iPhone  OS   •  Mobile  pla,orm  developed  by   Apple  for  iPhone  and  iPod  Touch   •  Based  on  Mac  OS  X   •  Development  kit  only  available  for   Mac  OS  X   •  Programming  Language:  ObjecFve-­‐ C   •  App  distribuFon  only  via  Apple’s   App  Store  
  • 3. iPhone  Phenomenon   •  Touch  screen   •  Screen  size   •  UI  and  services   •  Service  usage   •  Mobile  internet   •  "Easy"  development   •  App  Store   •  Huge  impact!  
  • 5. Developer's  view   •  One  pla,orm,  one  screen  size     –  Although  different  OS  versions  and  iPad   •  NaFve  language  Obj-­‐C   •  App  Store  
  • 6. NaFve  vs.  Web   •  Na#ve  apps   –  DistribuFon  only  with  the   App  Store   •  Web  apps   –  DistribuFon  via  the  Internet   –  Very  close  to  naFve   experience  
  • 7. App  Store   •  App  Store  opened  in  July  2008   •  Huge  success   •  Very  easy  to  use   –  iTunes  legacy,  iPod  user's  familiar  with  the  store   •  "Apple-­‐tax",  Apple  charges  30%  of  income   •  Apple  checks  if  your  app  is  qualified  for  App   Store  
  • 8. App  Store   •  Usually  games  sell  well   •  Most  of  the  apps  very  simple   –  iFart  –  phenomenon   •  Pricing  usually  from  0.79€  to  9.99€   •  Lot  of  free  soeware   •  Lot  of  apps,  how  to  adverFse  your  app?   –  Top  lists   –  Price  cut  
  • 9.
  • 10. NaFve  App  PossibiliFes   •  Threading   •  Core  Audio,  OpenAL   •  Networking   •  MediaPlayer   •  File  System  Access   Framework   •  Locale   •  Accelerometer   •  Security  Framework   •  Access  to     •  SQLite  Library   –  built-­‐in  camera,  photos     –  addressbook,  web   •  XML  Libraries   •  Core  LocaFon   •  Quartz,  Core  AnimaFon,   Framework   OpenGL  ES  
  • 11. iPhone  OS  3.0   •  In  App  Purchase   •  External  Accessory  Framework   •  Peer  to  Peer  ConnecFvity   •  Maps   •  iPod  Library  Access  
  • 12. LimitaFons   •  No  mulFtasking  for  non-­‐Apple  apps   –  Importance  of  saving  state!   –  Push  NoFficaFon  Service   •  App  Store   –  Apple's  limitaFon     –  DistribuFon  limitaFon  
  • 13. Developer  Program's   •  Standard  Program,  99  €  /  year   •  Enterprise  Program,  299  €  /  year   •  University  Program,  free