ios ecosystem

61
Massimo Oliviero § The Mentor iOS Ecosystem a brief introduction

Upload: massimo-oliviero

Post on 10-May-2015

894 views

Category:

Technology


0 download

DESCRIPTION

Una breve introduzione al mondo iOS.

TRANSCRIPT

Page 1: iOS Ecosystem

Massimo Oliviero § The Mentor

iOS Ecosystema brief introduction

Page 2: iOS Ecosystem

iOS Bootcamp

Chi sono

Massimo OlivieroMobile Developer & Entrepreneur

http://www.massimooliviero.net

@maxoly

[email protected]

Page 3: iOS Ecosystem

Agenda

Context Process Platforms Tools

Mobile Market

AppStore

Environment

Apple Developer Program

Devices

SDK

Xcode

Simulator

Instruments

Page 4: iOS Ecosystem

Sondaggio

?

Page 5: iOS Ecosystem

http://pragmamark.org

Context Process Platforms Tools

Mobile Market

AppStore

Environment

Apple Developer Program

Devices

SDK

Xcode

Simulator

Instruments

Context

Mobile Market

AppStore

Environment

Page 6: iOS Ecosystem

http://pragmamark.org

Mobile Market

Page 7: iOS Ecosystem

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

Page 8: iOS Ecosystem

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

Page 9: iOS Ecosystem

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

Page 10: iOS Ecosystem

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

Page 11: iOS Ecosystem

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

Page 12: iOS Ecosystem

http://pragmamark.org

App Store

Page 13: iOS Ecosystem

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

Page 14: iOS Ecosystem

Apps Developers

https://www.mylookout.com/appgenome

Page 15: iOS Ecosystem

Free vs. Paid Apps

https://www.mylookout.com/appgenome

Page 16: iOS Ecosystem

Revenue

Page 17: iOS Ecosystem

iOS Bootcamp

Case history

• What’s App MessengerPrezzo App Store: $0.99Prezzo Google Play: gratis / per il primo anno

• Angry BirdsPrezzo App Store: $0.99Prezzo Google Play: gratis / con ADV

Page 18: iOS Ecosystem

iOS Bootcamp

Case history

• Clear App350K download in 9 giorni a $0.99 l’unoora il prezzo è a $2.99

• Draw Something +50M download in meno di 2 mesi.

Page 19: iOS Ecosystem

iOS Bootcamp

Riassumendo

• Il contestoUn ambiente che invoglia l’utente

• Credit cardThere are 400 million iTunes accounts (with credit cards attached and ready to spend)

Page 20: iOS Ecosystem

quindi...

Page 21: iOS Ecosystem

iOS Bootcamp

Apps Trends

1. Games

2. Education

3. Entertainment

4. Books

5. Lifestyle

http://148apps.biz/app-store-metrics/

Page 22: iOS Ecosystem

http://pragmamark.org

Environment

Page 23: iOS Ecosystem

iOS Bootcamp

Think differentI 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 ^_^

Page 24: iOS Ecosystem

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

Page 25: iOS Ecosystem

iOS Bootcamp

Requisiti

• Mac OS

• Xcode (free)

• Device (iPhone/iPad/iPodTouch)

• Apple ID

• Apple Developer Program (ADP)

Page 26: iOS Ecosystem

http://pragmamark.org

Context Process Platforms Tools

Mobile Market

AppStore

Environment

Apple Developer Program

Devices

SDK

Xcode

Simulator

Instruments

Process

Apple Developer Program

Page 27: iOS Ecosystem

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

Page 28: iOS Ecosystem

iOS Bootcamp

Apple Developer Program

• Member Centergestione utenti, sottoscrizioni e rinnovi

• iOS Provisioning Portalcertificati di sviluppo e distribuzione, device

• iTunes Connectapp submission, sales and trends e pagamenti

iOS Provisioning Portal

Page 29: iOS Ecosystem

iOS Bootcamp

Concepts

• CertificatiIdentificano univocamente un attore

• DevicesElenco dei device abilitati al testing

• App IDsIdentificativi univoci delle app

• ProvisioningE’ un asset che unisce i tre concetti precedenti

Page 30: iOS Ecosystem

iOS Bootcamp

Certificati

• Development CertificateAssociato ad una persona del team

• Distribution CertificateAssociato all’identità dell’azienda (sviluppatore)

Page 31: iOS Ecosystem

iOS Bootcamp

Devices• Scopo

device per fini di sviluppo e test

• Name + UDIDUnique Device IDentifier, stringa di 40 caratteries. 67a43b0925c7a8050ad788591ace81d1bda81bed

• Limiti

1. ADP prevede un massimo di 100 device

2. Non è possibile eliminare un device fino al successivo rinnovo dell’ADP

Page 32: iOS Ecosystem

iOS Bootcamp

App IDs

• Bundle Identifierè l’identificativo univoco dell’app

• Reverse domain namees. com.mycompany.BestAppEver

• Wild-card characteres. com.mycompany.*

Page 33: iOS Ecosystem

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.

Page 34: iOS Ecosystem

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

Page 35: iOS Ecosystem

La vostra faccia ora

Page 36: iOS Ecosystem

Step by step

MMADP $$ Certificati

MDistributionCertificate

DevelopmentCertificate O

MMTeam Device

MDeviceClienti OMM

M M

Nuova APP App ID Provisioning OMM

Xcode Install Build & sign

Page 37: iOS Ecosystem

http://pragmamark.org

Context Process Platforms Tools

Mobile Market

AppStore

Environment

Apple Developer Program

Devices

SDK

Xcode

Simulator

Instruments

Platforms

Devices

SDK

Page 38: iOS Ecosystem

http://pragmamark.org

Devices

Page 39: iOS Ecosystem

iOS Bootcamp

Device iOS

• iPhone

• iPad

• iPodTouch

Page 41: iOS Ecosystem

CPU Apple A5 Dual Core512 MB RAM

Camera 720p HD

iPad timeline

iPad 1

04/2010

iPad 2

03/2011 03/2012

the new iPad

CPU Apple A4256 MB RAM

Wi-FiQuad-Band GSM/

GPRS/EDGEBluethooth

A-GPSMagnetometro

Microfono

Display Retina2048×1536 px resolution (264 ppi)

1 GB RAMCamera 1080p - 5MP

Page 42: iOS Ecosystem

iOS Bootcamp

Device iOS in commercio

• iPhone 4S

• iPhone 4

• iPhone 3GS (ebbene si)

• the new iPad (3rd)

• iPad 2

• iPod Touch 4G

Page 43: iOS Ecosystem

iOS Bootcamp

Device Specs

• GSM Arenahttp://www.gsmarena.com/apple-phones-48.php

• the iPhoneWikihttp://theiphonewiki.com/wiki/

• iPhone Dev Wikihttp://iphonedevwiki.net/index.php/Main_Page

Page 44: iOS Ecosystem

http://pragmamark.org

SDK

Page 45: iOS Ecosystem

iOS Bootcamp

iOS

• Sistema opertivo mobilearchietture 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

Page 46: iOS Ecosystem

iOS Bootcamp

iOS SDK

• Librerie e strumenti di sviluppo

• Prima release Marzo 2008

• Side by side con Xcode e Mac OS

Page 47: iOS Ecosystem

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

Page 48: iOS Ecosystem

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

Page 49: iOS Ecosystem

http://pragmamark.org

Context Process Platforms Tools

Mobile Market

AppStore

Environment

Apple Developer Program

Devices

SDK

Xcode

Simulator

Instruments

Tools

Xcode

Simulator

Instruments

Page 50: iOS Ecosystem

http://pragmamark.org

Xcode

Page 51: iOS Ecosystem

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)

Page 52: iOS Ecosystem

http://pragmamark.org

XCodeDemo

Page 53: iOS Ecosystem

http://pragmamark.org

iOS Simulator

Page 54: iOS Ecosystem

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!

Page 55: iOS Ecosystem

iOS Bootcamp

Con qualche problema...

• Risorse non limitate

• Falsi Memory Leak

• Nessun supporto per la Camera

Page 56: iOS Ecosystem

http://pragmamark.org

iOS SimulatorDemo

Page 57: iOS Ecosystem

http://pragmamark.org

Instruments

Page 58: iOS Ecosystem

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)

Page 59: iOS Ecosystem

http://pragmamark.org

InstrumentsDemo

Page 60: iOS Ecosystem

iOS Bootcamp

What’s NeXT !?X

code

, deb

uggin

g &

deve

lopm

ent t

ools

Proj

ect S

truc

ture

, cod

e

orga

niza

tion

& co

de

conv

entio

nUI customization

and technique

App User

Experience & User

Interaction

Design iOS Application

Mobile development methodology

Page 61: iOS Ecosystem

Domande?