7. File types
• .app
è un bundle che contiene l’app e le risorse
• .ipa
è la versione compressa e sotto DRM del file .app
iOS Programming
8. App Sandbox
• La sandbox è un contenitore virtuale dove l’app
può leggere e scrivere file
• L’app non è autorizzata ad accedere ai file al di
fuori della sandbox
• Esistono delle directory speciali all’interno della
sandbox dove posizionare i file
iOS Programming
23. Layers
• Cocoa Touch con le funzionalità base
Contiene i framework
• Media i framework per grafica, audio e video.
Contiene
• Core Services per i servizi di sistema.
Contiene i framework
• Core OSframework di basso livello.
Contiene i
iOS Programming
27. Long-Running Background Tasks
• Audio, per ascoltare un audio in background
• Location, per tracciare la posizione dell’utente
• Voip, per supportare chiamate voip
• Newsstand, per scaricare in background i
contenuti
• External, per comunicare con accessori esterni
iOS Programming
28. Storyboard
• E’ una tecnologia introdotta in iOS 5
• Permette di disegnare l’interfaccia di tutta l’app in
un unico posto (file)
• Permette di definire le transizioni tra una view e
l’altra
• Si bello però, sconsigliato per progetti in team e
troppo rigido per dev pro
iOS Programming
29. Standard System View Controllers
• Address Book UI contatti della rubrica
Per visualizzare e manipolare
• Event Kit UImanipolare eventi del calendario
Per visualizzare e
• Message UI e messaggi sms
Per inviare email
• Media Player
Per visualizzare e recuperare video ed immagini
iOS Programming
30. Notification
• Local notification
Notifiche locali schedulate dall’app e gestite dal
sistema operativo del singolo device.
• Push Notification (remote notification)
Notifiche inviate dai server Apple (APNs Apple
Push Notification service) su tutti i device dove
l’app è installata.
iOS Programming
33. iAd Framework
• Advertising network gestito da Apple
• Integrato in iOS 4 e successivi
• Semplice: solo due classi
• ADBannerView, classico banner (es. 320x50)
• ADInterstitialAd, full-screen banner (solo iPad)
iOS Programming
35. Map Kit Framework
• Controllo nativo per integrare le mappe nell’app
• Utilizza Google Mobile Maps fino ad iOS 5.1.1
• Da iOS 6 utilizza Apple Map (sig!)
• Supporta annotazioni, overlays e reverse
geocoding
iOS Programming
38. Graphics Technologies
• Core Graphics (Quartz) immagini
Grafica vettoriale 2D e manipolazione
• Core Animatione (Quartz)
Animazioni delle view di altri oggetti
• Core Image e immagini fisse
Manipolazione video
• Core Text
Text layout e rendering
• OpenGL ES + GLKit (2D e 3D rendering)
iOS Programming
39. Audio Technologies
• Media Player Framework
Per accedere alla libreria di iTunes
• AVFoundation Framework
Audio playback and recording
• OpenAL high-quality e positional audio
High-performance,
• Core Audio livello
Libreria di basso
iOS Programming
44. Core OS
• Accelerate framework
DSP, linear algebra, and image-processing calculations
• Core Bluetooth framework
Per interagire con il Bluetooth
• External Accessory framework
Per comunicare con accessori esterni
iOS Programming