Share via


Introduzione a iOS 8

Con iOS 8, Apple ha fornito una pletora di nuovi framework e API per eccitare e deliziare gli sviluppatori. In questa guida verranno presentate queste nuove API e si vedrà in che modo iOS 8 può trarre vantaggio sia dagli sviluppatori che dagli utenti.

iOS 7 ha modificato visivamente l'intera interfaccia utente iOS da ciò che gli utenti e gli sviluppatori avevano aspettato, proprio dal primo sistema operativo i Telefono. IOS 8 continua con questo fornendo molti framework per gli sviluppatori, che consente agli utenti di controllare quasi ogni aspetto della loro vita direttamente dal loro i Telefono. Ad esempio, l'integrità e il fitness possono essere analizzati con HealthKit, i passcode sono obsolescenti con l'autenticazione biometrica usando LocalAuthentication, le estensioni dell'app aprono un canale di comunicazione tra app di terze parti e HomeKit consente di trasformare la casa in home of the Future.

Se iOS 7 riguardava il piacere degli utenti, iOS 8 è incentrato sulla delizia degli sviluppatori con un'intera gamma di questi nuovi strumenti gustosi.

Questa guida presenta le nuove API per gli sviluppatori Xamarin.iOS.

Esistono anche alcune API deprecate in iOS 8, descritte in dettaglio alla fine di questo documento.

Requisiti

Per creare app iOS 8 in Visual Studio per Mac, è necessario quanto segue:

  • Xcode 7 e iOS 8 o versione successiva : le API Xcode e iOS più recenti di Apple devono essere installate e configurate nel computer dello sviluppatore.
  • Visual Studio per Mac: la versione più recente di Visual Studio per Mac deve essere installata e configurata nel dispositivo utente.
  • Dispositivo o simulatore iOS 8: un dispositivo iOS che esegue la versione più recente di iOS 8 per i test.

Casa e tempo libero

iOS 8 ha contribuito a piantare saldamente Apple e il dispositivo iOS direttamente nel cuore della tua casa attraverso l'uso di HomeKit e HealthKit. In questa sezione verrà illustrato come funzionano entrambi i nuovi framework e come possono essere integrati nell'applicazione Xamarin.iOS.

HomeKit

Il controllo delle appliance da i Telefono non è una nuova applicazione di tecnologia. Molti prodotti home connessi possono essere controllati tramite un'app iOS. Tuttavia, HomeKit ora fa questo passo avanti promuovendo un protocollo comune per i dispositivi di automazione domestica e rendendo disponibile un'API pubblica per determinati produttori, ad esempio iHome, Philips e Honeywell. Per l'utente, ciò significa che può controllare quasi ogni aspetto della propria casa senza problemi dall'interno di un'applicazione. È irrilevante per loro sapere che stanno usando una lampadina Hue Philips, o un allarme Nest. Gli utenti possono anche concatenare numerosi processi smart home in "Scene".

Con HomeKit, le app di terze parti e Siri possono individuare gli accessori e aggiungerli al database di configurazione home personale, modificare e agire su questi dati e comunicare con accessori e servizi per eseguire un'azione.

Impostazione

Il diagramma seguente mostra la gerarchia di base della configurazione degli accessori HomeKit:

Questo diagramma mostra la gerarchia di base della configurazione degli accessori HomeKit

Per iniziare a usare HomeKit, gli sviluppatori dovranno assicurarsi che il profilo di provisioning abbia selezionato il servizio HomeKit. Apple ha anche fornito agli sviluppatori un componente aggiuntivo del simulatore HomeKit per Xcode. Questo è disponibile nel Centro per sviluppatori Apple, in .Hardware IO Tools for Xcode

Per altre informazioni, vedere la guida a HomeKit .

HealthKit

HealthKit è un framework introdotto in iOS 8 che fornisce un archivio dati centralizzato, coordinato e sicuro per le informazioni correlate all'integrità. Il sistema operativo garantisce la privacy e la sicurezza delle informazioni sull'integrità e, con l'app Integrità, un dashboard per l'utente. Con l'autorizzazione dell'utente, le applicazioni possono leggere e scrivere un'ampia gamma di informazioni sull'integrità.

Per altre informazioni sull'uso di questa funzionalità nell'app Xamarin.iOS, vedere la guida Introduzione a HealthKit .

Estensione della funzionalità i Telefono

Con iOS8, agli sviluppatori viene assegnato un maggiore controllo su chi può usare l'app e una maggiore capacità per una comunicazione più aperta tra app di terze parti. Funzionalità come Le estensioni delle app e Selezione documenti aprono un mondo di possibilità per l'uso delle applicazioni nell'ecosistema apple.

Estensioni dell'app

Le estensioni dell'app, per semplificare, sono un modo per consentire alle app di terze parti di comunicare tra loro. Per mantenere standard di sicurezza elevati e mantenere l'integrità delle app in modalità sandbox, questa comunicazione non avviene direttamente tra le applicazioni. Al contrario, viene eseguito da un'estensione al centro.

Il primo passaggio per la creazione di un'estensione dell'app consiste nel definire il punto di estensione corretto. Ciò è importante per garantire il comportamento e la disponibilità delle API corrette. Per creare un'estensione dell'app in Visual Studio per Mac, aggiungerla a un'applicazione esistente aggiungendo un nuovo progetto alla soluzione.

Nella finestra di dialogo Nuovo progetto passare a C#iOS Unified API Extensions (Estensioni API>unificate per C#>iOS>), come illustrato nello screenshot seguente:

Creazione di una nuova estensione

La finestra di dialogo Nuovo progetto include sette nuovi modelli di progetto per la creazione di estensioni dell'app e vengono illustrati di seguito. Si noti che molte delle estensioni sono correlate ad altre nuove API in iOS, ad esempio Selezione documenti:

  • Azione : consente agli sviluppatori di creare pulsanti di azione personalizzati univoci che consentono agli utenti di eseguire determinate attività
  • Tastiera personalizzata: consente agli sviluppatori di aggiungere alla gamma di tastiere Apple predefinite aggiungendone una personalizzata. La tastiera popolare, Swype usa questo per portare la tastiera in iOS.
  • Selezione documenti: contiene un controller di visualizzazione selezione documenti che consente agli utenti di accedere ai file all'esterno della sandbox dell'applicazione.
  • Provider di file di selezione documenti: consente di archiviare in modo sicuro i file tramite selezione documenti.
  • Modifica foto: questo si espande sui filtri e sugli strumenti di modifica già forniti da Apple nell'applicazione Foto per offrire agli utenti maggiore controllo e altre opzioni durante la modifica delle foto.
  • Oggi : offre alle applicazioni la possibilità di visualizzare i widget nella sezione Oggi del Centro notifiche.

Per altre informazioni sull'uso delle estensioni dell'app in Xamarin, vedere la guida Introduzione alle estensioni dell'app .

ID tocco

Touch ID è stato introdotto in iOS 7 come mezzo per autenticare l'utente, simile a un passcode. Tuttavia, era limitato a sbloccare il dispositivo, usando l'App Store, usando iTunes e autenticando solo il keychain iCloud

Esistono ora due modi per usare Touch ID come meccanismo di autenticazione nelle applicazioni iOS 8 usando l'API di autenticazione locale. Non è attualmente possibile usare l'autenticazione locale per l'autenticazione remota.

In primo luogo, aiuta i servizi Keychain esistenti tramite l'uso di nuovi elenchi di Controllo di accesso Keychain (ACL). I dati keychain possono essere sbloccati con l'autenticazione corretta di un'impronta digitale degli utenti.

In secondo luogo, LocalAuthentication fornisce due metodi per autenticare l'applicazione in locale. Gli sviluppatori devono usare CanEvaluatePolicy per determinare se il dispositivo è in grado di accettare Touch ID e quindi EvaluatePolicy avviare l'operazione di autenticazione.

Per altre informazioni su Touch ID e su come integrarlo in un'applicazione Xamarin.iOS, vedere Touch ID e Face ID nelle guide Xamarin.iOS .

Selezione documenti

Selezione documenti funziona con un'unità iCloud degli utenti per consentire all'utente di aprire i file creati in un'app diversa, importarli e modificarli ed esportarli di nuovo. In questo modo si crea un flusso di lavoro intuitivo, quindi un'esperienza molto migliore per gli utenti. La sincronizzazione di iCloud fa questo passo avanti: tutte le modifiche apportate in un'unica applicazione verranno riflette in modo coerente in tutti i dispositivi.

Per informazioni più approfondite su Selezione documenti e su come integrarlo in un'applicazione Xamarin.iOS, vedere la guida Introduzione alla selezione documenti .

Handoff

L'handoff, che fa parte della funzionalità continuità più ampia, fa un passo avanti verso l'integrazione di OS X e iOS. Questo include AirDrop multipiattaforma, la possibilità di effettuare chiamate i Telefono, SMS su iPad e Mac e miglioramenti nel tethering dal tuo i Telefono.

Handoff funziona con iOS 8 e Yosemite e richiede che un account iCloud sia connesso a tutti i diversi dispositivi che vuoi usare. Dovrebbe funzionare con la maggior parte delle app Apple preinstallate, tra cui Safari, iWork, Mappe, Calendari e Contatti.

Per altre informazioni, vedere la guida handoff .

Storyboard unificati

iOS 8 include un nuovo meccanismo più semplice da usare per la creazione dell'interfaccia utente, ovvero lo storyboard unificato. Con un singolo storyboard per coprire tutte le diverse dimensioni dello schermo hardware, è possibile creare visualizzazioni veloci e reattive in un vero stile "design once, use many".

Prima di iOS8, gli sviluppatori usavano UIInterfaceOrientation la distinzione tra modalità verticale e orizzontale e UIInterfaceIdiom per distinguere i dispositivi iOS. In iOS8 non è più necessario creare storyboard separati per i dispositivi i Telefono e iPad, l'orientamento e il dispositivo sono determinati usando classi di dimensioni.

Ogni dispositivo è definito da una classe Size, sia nell'asse verticale che nell'asse orizzontale, e esistono due tipi di classi di dimensioni in iOS 8:

  • Regolare : si tratta di una grande dimensione dello schermo (ad esempio un iPad) o un gadget che dà l'impressione di una grande dimensione (ad esempio un UIScrollView)
  • Compatta: si tratta di dispositivi più piccoli (ad esempio i Telefono). Questa dimensione tiene conto dell'orientamento del dispositivo.

Se i due concetti vengono usati insieme, il risultato è una griglia di 2 x 2 che definisce le diverse dimensioni possibili che possono essere usate in entrambi gli orientamenti diversi, come illustrato nel diagramma seguente:

Diagramma che rappresenta la griglia 2 x 2 che definisce le diverse dimensioni possibili che possono essere usate in entrambi gli orientamenti diversi

Per altre informazioni sulle classi di dimensioni, vedere Introduzione agli storyboard unificati.

Kit foto

Photo Kit è un nuovo framework che consente alle applicazioni di eseguire query sulla libreria di immagini di sistema e creare interfacce utente personalizzate per visualizzarne e modificarne il contenuto. Include una serie di classi che rappresentano asset di immagini e video, nonché raccolte di asset come album e cartelle.

Per altre informazioni, vedi la nostra guida PhotoKit .

Games

Kit scena

Scene Kit è un'API grafo della scena 3D che semplifica l'uso della grafica 3D. È stato introdotto per la prima volta in OS X 10.8 e ora è arrivato a iOS 8. Con Scene Kit che crea visualizzazioni 3D immersive e giochi 3D casuali non richiede competenze in OpenGL. Basandosi sui concetti comuni del grafico della scena, Scene Kit astrae le complessità di OpenGL e OpenGL ES, semplificando l'aggiunta di contenuto 3D a un'applicazione. Tuttavia, se sei un esperto OpenGL, Scene Kit ha un grande supporto per legarsi direttamente con OpenGL. Include anche numerose funzionalità che integrano la grafica 3D, come la fisica, e si integra molto bene con diversi altri framework Apple, ad esempio Animazione core, Core Image e Sprite Kit.

Per altre informazioni, vedere la documentazione di SceneKit .

Sprite Kit

Sprite Kit, il framework di gioco 2D di Apple, ha alcune nuove funzionalità interessanti in iOS 8 e OS X Yosemite. Questi includono l'integrazione con Scene Kit, supporto shader, illuminazione, ombreggiature, vincoli, generazione normale della mappa e miglioramenti della fisica. In particolare, le nuove caratteristiche della fisica rendono molto facile aggiungere effetti realistici a un gioco.

Per altre informazioni, vedere la documentazione di SpriteKit .

Altre modifiche

Oltre alle principali modifiche apportate in iOS 8 descritte in precedenza, Apple ha aggiornato anche molti framework esistenti. Di seguito sono riportati i dettagli seguenti:

  • Immagine principale: Apple ha ampliato il framework di elaborazione delle immagini aggiungendo un supporto migliore per il rilevamento di aree rettangolari e codici a matrice all'interno delle immagini. Mike Bluestein esplora questo argomento nel suo post di blog intitolato Rilevamento immagini in iOS 8

API deprecate

Con tutti i miglioramenti apportati in iOS 8, alcune API sono deprecate. Alcuni di questi sono descritti in dettaglio di seguito.

  • UIApplication : i metodi e le proprietà usati per la registrazione delle notifiche remote sono deprecati. Si tratta di registerForRemoteNotificationTypes e enabledRemoteNotificationTypes.

  • UIViewController : le classi tratti e dimensioni hanno sostituito i metodi e le proprietà usati per descrivere l'orientamento dell'interfaccia. Per altre informazioni su come usarli, vedere Introduzione agli storyboard unificati.

  • UISearchDisplayController : questa operazione è stata sostituita da UISearchController in iOS8.

Riepilogo

In questo articolo sono state esaminate alcune delle nuove funzionalità introdotte da Apple in iOS 8.