Slide 1

Slide 1 text

Massimo Oliviero § The Mentor  iOS Ecosystem a brief introduction

Slide 2

Slide 2 text

iOS Bootcamp Chi sono Massimo Oliviero Mobile Developer & Entrepreneur http://www.massimooliviero.net @maxoly [email protected]

Slide 3

Slide 3 text

Agenda Context Process Platforms Tools Mobile Market AppStore Environment Apple Developer Program Devices SDK Xcode Simulator Instruments

Slide 4

Slide 4 text

Sondaggio ?

Slide 5

Slide 5 text

http://pragmamark.org Context Process Platforms Tools Mobile Market AppStore Environment Apple Developer Program Devices SDK Xcode Simulator Instruments Context Mobile Market AppStore Environment

Slide 6

Slide 6 text

http://pragmamark.org Mobile Market

Slide 7

Slide 7 text

Top mobile vendors vendor shipments share annual growth Nokia 417M 27% -7.9% Samsung 329M 21% 17.6% Apple 93M 6.0% 96% Source: IDC Worldwide Mobile Phone Tracker, February 1, 2012 Mobile Phone Vendors, Shipments, and Market Share Calendar Year 2011

Slide 8

Slide 8 text

Top smartphone vendors vendor shipments share annual growth Samsung 95M 19% 310% Apple 93M 19% 96% Nokia 77M 15% -22% Source: IDC Worldwide Mobile Phone Tracker, February 1, 2012 Worldwide Smartphone Vendors, Shipments, and Market Share Calendar Year 2011

Slide 9

Slide 9 text

Top smartphone OS os shipments share annual growth Android 237M 48% 244% iOS 93M 19% 96% Symbian 80M 16% -29% Source: Canalys (Feb 2011) Worldwide smartphone market, by operating system, by 2011 global sales

Slide 10

Slide 10 text

Top tablet vendor os 2011 2012 share iOS 40M 73M 61% Android 17M 38M 31% Microsoft 0M 5M 4,2% Source: Gartner (April 2012) Worldwide Sales of Media Tablets to End Users by OS

Slide 11

Slide 11 text

iOS Bootcamp Diamo i numeri • +365 milioni di device iOS • +220 milioni di iPhone (2, 3G, 3Gs, 4, 4S) • +67 milioni di iPad (iPad 1, iPad 2, new iPad) • 80% iOS 5 Source: Apple

Slide 12

Slide 12 text

http://pragmamark.org App Store

Slide 13

Slide 13 text

iOS Bootcamp Diamo i numeri • +400 milioni di account iTunes con CC • +650.000 apps (di cui 225 specifiche per iPad) • +30 miliardi di download • +120.000 developers • +5 miliardi $ agli sviluppatori • 155 paesi http://en.wikipedia.org/wiki/App_Store_(iOS) Apple WWDC

Slide 14

Slide 14 text

Apps Developers https://www.mylookout.com/appgenome

Slide 15

Slide 15 text

Free vs. Paid Apps https://www.mylookout.com/appgenome

Slide 16

Slide 16 text

Revenue

Slide 17

Slide 17 text

iOS Bootcamp Case history • What’s App Messenger Prezzo App Store: $0.99 Prezzo Google Play: gratis / per il primo anno • Angry Birds Prezzo App Store: $0.99 Prezzo Google Play: gratis / con ADV

Slide 18

Slide 18 text

iOS Bootcamp Case history • Clear App 350K download in 9 giorni a $0.99 l’uno ora il prezzo è a $2.99 • Draw Something +50M download in meno di 2 mesi.

Slide 19

Slide 19 text

iOS Bootcamp Riassumendo • Il contesto Un ambiente che invoglia l’utente • Credit card There are 400 million iTunes accounts (with credit cards attached and ready to spend)

Slide 20

Slide 20 text

quindi...

Slide 21

Slide 21 text

iOS Bootcamp Apps Trends 1. Games 2. Education 3. Entertainment 4. Books 5. Lifestyle http://148apps.biz/app-store-metrics/

Slide 22

Slide 22 text

http://pragmamark.org Environment

Slide 23

Slide 23 text

iOS Bootcamp Think different I contro del mondo Apple • nessun programma di certificazione per devs • unico evento la WWDC • politica di update Xcode & SDK • specifiche tecniche device non complete • risorse sotto NDA • Apple ID e ADP come se piovesse ^_^

Slide 24

Slide 24 text

iOS Bootcamp Think different I pro del mondo Apple • WWDC di qualità • risorse di qualità (soprattutto la docs) • strumenti curati e performanti (anche se...) • iOS SDK

Slide 25

Slide 25 text

iOS Bootcamp Requisiti • Mac OS • Xcode (free) • Device (iPhone/iPad/iPodTouch) • Apple ID • Apple Developer Program (ADP)

Slide 26

Slide 26 text

http://pragmamark.org Context Process Platforms Tools Mobile Market AppStore Environment Apple Developer Program Devices SDK Xcode Simulator Instruments Process Apple Developer Program

Slide 27

Slide 27 text

Developer Programs iOS Developer Program $99/year App Store / 100 device iOS Developer Enterprise Program $299/year NO App Store / ∞ device iOS Developer University Program free NO App Store / 200 person

Slide 28

Slide 28 text

iOS Bootcamp Apple Developer Program • Member Center gestione utenti, sottoscrizioni e rinnovi • iOS Provisioning Portal certificati di sviluppo e distribuzione, device • iTunes Connect app submission, sales and trends e pagamenti iOS Provisioning Portal

Slide 29

Slide 29 text

iOS Bootcamp Concepts • Certificati Identificano univocamente un attore • Devices Elenco dei device abilitati al testing • App IDs Identificativi univoci delle app • Provisioning E’ un asset che unisce i tre concetti precedenti

Slide 30

Slide 30 text

iOS Bootcamp Certificati • Development Certificate Associato ad una persona del team • Distribution Certificate Associato all’identità dell’azienda (sviluppatore)

Slide 31

Slide 31 text

iOS Bootcamp Devices • Scopo device per fini di sviluppo e test • Name + UDID Unique Device IDentifier, stringa di 40 caratteri es. 67a43b0925c7a8050ad788591ace81d1bda81bed • Limiti 1. ADP prevede un massimo di 100 device 2. Non è possibile eliminare un device fino al successivo rinnovo dell’ADP

Slide 32

Slide 32 text

iOS Bootcamp App IDs • Bundle Identifier è l’identificativo univoco dell’app • Reverse domain name es. com.mycompany.BestAppEver • Wild-card character es. com.mycompany.*

Slide 33

Slide 33 text

iOS Bootcamp Provisioning • Che cosa è è un una risorsa (un file) che unisce i 3 concetti precedenti ovvero App-ID, Devices e Certificati • A cosa serve è incluso nell’applicazione e serve per definire chi è autorizzato a distribuire l’app e chi è autorizzato ad eseguire l’app.

Slide 34

Slide 34 text

iOS Bootcamp Provisioning •Development Provisioning ‣ App ID ‣ elenco di certificati (development certificate) ‣ elenco di device •Distribution Provisioning ‣ Distribution method (App Store o AdHoc) ‣ App ID ‣ un certificato (distribution certificate) ‣ e in caso di AdHoc un elenco di device

Slide 35

Slide 35 text

La vostra faccia ora

Slide 36

Slide 36 text

Step by step M M ADP $$ Certificati M Distribution Certificate Development Certificate O M M Team Device M Device Clienti O M M M M Nuova APP App ID Provisioning O M M Xcode Install Build & sign

Slide 37

Slide 37 text

http://pragmamark.org Context Process Platforms Tools Mobile Market AppStore Environment Apple Developer Program Devices SDK Xcode Simulator Instruments Platforms Devices SDK

Slide 38

Slide 38 text

http://pragmamark.org Devices

Slide 39

Slide 39 text

iOS Bootcamp Device iOS • iPhone • iPad • iPodTouch

Slide 40

Slide 40 text

Assisted GPS, Tri-band 3.6 Mbps UMTS/HSDPA iPhone timeline iPhone 1 06/2007 iPhone 3G 06/2008 06/2009 iPhone 3GS 06/2010 iPhone 4 iPhone 4S 10/2011 Multi touch Gesture 3.5’’ screen 320×480 163 ppi Camera 2MP 128 MB RAM Magnetometro 7.2 Mbit/s HSDPA Camera 3.0 MP VGA (480p) 256 MB RAM CPU Apple A4 800 MHZ Display Retina 326 ppi Giroscopio a 3 assi Camera 720p HD 5MP Camera frontale 2MP 512 MB RAM CPU Dual Core Apple A5 Camera 8MP

Slide 41

Slide 41 text

CPU Apple A5 Dual Core 512 MB RAM Camera 720p HD iPad timeline iPad 1 04/2010 iPad 2 03/2011 03/2012 the new iPad CPU Apple A4 256 MB RAM Wi-Fi Quad-Band GSM/ GPRS/EDGE Bluethooth A-GPS Magnetometro Microfono Display Retina 2048×1536 px resolution (264 ppi) 1 GB RAM Camera 1080p - 5MP

Slide 42

Slide 42 text

iOS Bootcamp Device iOS in commercio • iPhone 4S • iPhone 4 • iPhone 3GS (ebbene si) • the new iPad (3rd) • iPad 2 • iPod Touch 4G

Slide 43

Slide 43 text

iOS Bootcamp Device Specs • GSM Arena http://www.gsmarena.com/apple-phones-48.php • the iPhoneWiki http://theiphonewiki.com/wiki/ • iPhone Dev Wiki http://iphonedevwiki.net/index.php/Main_Page

Slide 44

Slide 44 text

http://pragmamark.org SDK

Slide 45

Slide 45 text

iOS Bootcamp iOS • Sistema opertivo mobile archietture ARM, multitasking, CocoaTouch, multi-touch GUI • Kernel XNU (stesso del MAC OS X) sviluppato inizialmente da NeXT per il NeXTSTEP os è un kernel ibrido • Inizialmente conosciuto come iPhone OS

Slide 46

Slide 46 text

iOS Bootcamp iOS SDK • Librerie e strumenti di sviluppo • Prima release Marzo 2008 • Side by side con Xcode e Mac OS

Slide 47

Slide 47 text

Side by side Xcode SDK SO 4.5 iOS 6 SDK Mountain Lion 4.3 iOS 5 SDK Lion 4.2 iOS 4.3 SDK Snow Leopard / Lion

Slide 48

Slide 48 text

iOS & devices OS iPhone iPad iPod 6.0 beta 3GS / 4 / 4S 2 / 3 4th gen 5.1 3GS / 4 / 4S 1 / 2 / 3 3rd / 4th gen 5.0 3GS / 4 / 4S 1 / 2 3rd / 4th gen 4.3 3GS / 4 / 4S 1 / 2 3rd / 4th gen 4.2.1 (uni) 3G / 3GS / 4 / 4S 1 / 2 3rd

Slide 49

Slide 49 text

http://pragmamark.org Context Process Platforms Tools Mobile Market AppStore Environment Apple Developer Program Devices SDK Xcode Simulator Instruments Tools Xcode Simulator Instruments

Slide 50

Slide 50 text

http://pragmamark.org Xcode

Slide 51

Slide 51 text

iOS Bootcamp Xcode • Ambiente di sviluppo (IDE) • Objective-C / Objective-C++ / C++ / C • Source Control (Subversion / Git) • Interface Builder • Alternative? Si, JetBrains AppCode (ma no UI)

Slide 52

Slide 52 text

http://pragmamark.org XCode Demo

Slide 53

Slide 53 text

http://pragmamark.org iOS Simulator

Slide 54

Slide 54 text

iOS Bootcamp iOS Simulator • iPhone / iPhone Retina / iPad / iPad Retina • Gesture, Orientation e Memory Warning • GPS (iOS 5 Simulator) • Apps: Safari, Immagini, Contatti, Impostazioni, Game Center, Edicola • Veloce!

Slide 55

Slide 55 text

iOS Bootcamp Con qualche problema... • Risorse non limitate • Falsi Memory Leak • Nessun supporto per la Camera

Slide 56

Slide 56 text

http://pragmamark.org iOS Simulator Demo

Slide 57

Slide 57 text

http://pragmamark.org Instruments

Slide 58

Slide 58 text

iOS Bootcamp Instruments • Strumento di analisi dell’applicazione • Traccia e profila le attività del codice • Integrato con XCode e con l’iOS Simulator • Individua problemi di memoria, di prestazioni e di consumo eccessivo delle risorse (batteria, memoria, CPU etc)

Slide 59

Slide 59 text

http://pragmamark.org Instruments Demo

Slide 60

Slide 60 text

iOS Bootcamp What’s NeXT !? Xcode, debugging & development tools Project Structure, code organization & code convention UI customization and technique App User Experience & User Interaction Design iOS Application Mobile development methodology

Slide 61

Slide 61 text

Domande?