Share via


Introduzione a iOS 10

Con il nuovo SDK di iOS 10, Apple include nuove API e servizi che consentono allo sviluppatore di creare nuove categorie di app e funzionalità. Un'app iOS può ora estendere le app Messaggi, Siri, Telefono e Mappe per offrire funzionalità avanzate e coinvolgenti per l'utente finale non disponibile in precedenza.

Per altre informazioni su iOS 10, vedere la documentazione di Apple per iOS + Apps .

Novità di iOS 10

Apple ha aggiunto diverse nuove API e servizi in iOS 10, oltre a numerosi miglioramenti alle funzionalità esistenti, tra cui:

Adattamento allo schermo del tono reale

La tecnologia True Tone Display di Apple usa il sensore di luce ambientale in un dispositivo iOS per regolare dinamicamente il colore e l'intensità dello schermo in base alle condizioni di illuminazione correnti. iOS 10 fornisce la nuova chiave UIWhitePointAdaptivityStyle che può essere aggiunta al file dell'app Info.plist e controlla il modo in cui True Tone applica lo spostamento dei colori standard.

Sono disponibili i seguenti valori:

  • UIWhitePointAdaptivityStyleStandardImpostazione predefinita : usare l'adattamento standard del punto bianco.
  • UIWhitePointAdaptivityStyleReading - Usato per le app incentrate sulla lettura.
  • UIWhitePointAdaptivityStyleGame - Usato per le app incentrate sul gioco.
  • UIWhitePointAdaptivityStyleVideo - Usato per le app incentrate sui video.
  • UIWhitePointAdaptivityStylePhoto - Usato per le app incentrate sulla fotografia in cui la fedeltà dei colori è più importante delle regolazioni del punto bianco ambientale.

Estensioni dell'app

Apple ha fornito diversi nuovi punti di estensione dell'app in iOS 10:

  • Directory delle chiamate
  • Interfaccia utente finalità e finalità
  • Messaggi
  • Contenuto delle notifiche
  • Notification Services
  • Pacchetto adesivo

Inoltre, le estensioni dell'app per la tastiera di terze parti hanno i miglioramenti seguenti:

  • La nuova DocumentInputMode proprietà della UITextDocumentProxy classe può determinare la lingua di input di un documento e consentire l'allineamento dell'estensione della tastiera con tale lingua.
  • Il nuovo HandleInputModeList metodo consente all'estensione della tastiera di visualizzare il menu di selezione della tastiera del sistema in risposta al tocco del tasto Globe.

Per altre informazioni, vedere l'introduzione alle estensioni, l'integrazione delle app messaggi, introduzione ai suggerimenti proattivi, Introduzione a SiriKit, Introduzione alle notifiche utente e guida alla programmazione delle estensioni per le app di Apple.

Miglioramenti per la ricerca nelle app

Core Spotlight in iOS 10 offre diversi miglioramenti alla ricerca di app, ad esempio:

  • Crowdsourced Deep Link Popularity (con privacy differenziale): offre un modo per promuovere il contenuto dell'app deep linked nei risultati della ricerca.
  • Ricerca in-app: usare la nuova CSSearchQuery classe per offrire funzionalità di ricerca in evidenza in-app simili al funzionamento delle app Posta elettronica, Messaggi e Note.
  • Continuazione ricerca: consente a un utente di avviare una ricerca in Spotlight o Safari, quindi aprire un'app e continuare la ricerca.
  • Visualizzazione dei risultati della convalida: lo strumento di convalida dell'API Ricerca app di Apple ora visualizza una rappresentazione visiva del markup e del deep linking di un sito Web durante la preparazione dei test.
  • Condivisione immagini dell'app messaggi: consente la visualizzazione delle immagini in-app più diffuse per la condivisione nei messaggi (tramite un'estensione dell'app messaggio) nelle ricerche in evidenza.

Per altre informazioni, vedi la guida Ai miglioramenti della ricerca delle app.

Miglioramenti di Apple Pay

Apple ha apportato diversi miglioramenti a Apple Pay in iOS 10 che consentono all'utente di effettuare pagamenti sicuri dai siti Web e attraverso l'interazione con Siri e Mappe.

Con iOS 10 sono state aggiunte diverse nuove API che funzionano sia con iOS che con watchOS per supportare reti di pagamento dinamiche e un nuovo ambiente di test sandbox.

Inoltre, il framework PassKit è stato ampliato per supportare Apple Pay all'esterno di e per consentire agli emittenti di UIKit carte di presentare le proprie carte dall'interno delle app.

Per saperne di più, vedi la nostra guida ai miglioramenti di Apple Pay.

Icone alternative per le app

Apple ha aggiunto diversi miglioramenti a iOS 10.3 che consentono a un'app di gestire l'icona:

  • ApplicationIconBadgeNumber - Ottiene o imposta il badge dell'icona dell'app in Springboard.
  • SupportsAlternateIcons - Se true l'app ha un set alternativo di icone.
  • AlternateIconName - Restituisce il nome dell'icona alternativa attualmente selezionata o null se si usa l'icona primaria.
  • SetAlternameIconName - Usa questo metodo per passare l'icona dell'app all'icona alternativa specificata.

Per saperne di più, vedi la guida alle icone alternative dell'app.

Introduzione a CallKit

La nuova API CallKit in iOS 10 consente alle app VOIP di integrarsi con l'interfaccia utente i Telefono e offrire un'interfaccia e un'esperienza familiari all'utente finale. Con questa API, gli utenti possono visualizzare e interagire con le chiamate VOIP dalla schermata di blocco del dispositivo iOS e gestire i contatti usando le visualizzazioni Preferiti e Recenti dell'app Telefono.

Inoltre, l'API CallKit consente di creare estensioni dell'app che possono associare un numero di telefono a un nome (ID chiamante) o indicare al sistema quando un numero deve essere bloccato (blocco delle chiamate).

Per altre informazioni, vedere la guida Introduttiva a Callkit .

Integrazione dell'app Messaggi

iOS 10 consente l'inclusione di un'estensione dell'app messaggio nella soluzione Xamarin.iOS che si integra con l'app Messaggi e presenta nuove funzionalità all'utente. L'estensione può inviare testo, adesivi, file multimediali e messaggi interattivi. Sono disponibili due tipi di estensione dell'app messaggio:

  • Pacchetti di adesivi: contiene una raccolta di adesivi che l'utente può aggiungere a un messaggio. I pacchetti adesivi possono essere creati senza scrivere codice.
  • app iMessage : può presentare un'interfaccia utente personalizzata all'interno dell'app Messaggi per la selezione di adesivi, l'immissione di testo, inclusi i file multimediali (con conversioni di tipi facoltative) e la creazione, la modifica e l'invio di messaggi di interazione.

Per altre informazioni, vedere la guida all'integrazione dell'app messaggi.

Miglioramenti di News Publisher

Con iOS 10, Apple consentirà a chiunque di grandi riviste e nuove organizzazioni di blogger e editori indipendenti di iscriversi e prodotto e distribuire contenuti all'app Apple News. Per altre informazioni, vedere la documentazione relativa alle risorse di Notizie di Apple.

Implementazione del feedback aptico

In i Telefono 7 e i Telefono 7 Plus, Apple include nuove risposte aptici che forniscono altri modi per coinvolgere fisicamente l'utente. Usare le nuove opzioni di feedback tattile per ottenere l'attenzione dell'utente e rafforzare le proprie azioni.

Diversi elementi predefiniti dell'interfaccia utente forniscono già feedback aptico, ad esempio picker, commutatori e dispositivi di scorrimento. iOS 10 aggiunge ora la possibilità di attivare a livello di codice gli aptici usando una sottoclasse concreta della UIFeedbackGenerator classe .

Per saperne di più, vedi la nostra guida di feedback aptico .

Suggerimenti proattivi

iOS 10 presenta nuovi modi per favorire l'engagement verso un'app consentendo al sistema di presentare in modo proattivo informazioni utili automaticamente all'utente in momenti appropriati. Proprio come iOS 9 ha fornito la possibilità di aggiungere una ricerca approfondita all'app usando Spotlight, Handoff e Siri Suggestions, con iOS 10 un'app può esporre funzionalità che possono essere presentate all'utente dal sistema all'interno delle posizioni seguenti:

  • Cambio app
  • Schermata di blocco
  • CarPlay
  • Mappe
  • Interazioni di Siri
  • Suggerimenti per QuickType

Un'app espone questa funzionalità al sistema usando una raccolta di tecnologie come NSUserActivity, markup Web, Core Spotlight, MapKit, Lettore multimediale e UIKit.

Per altre informazioni, vedere la guida Introduzione ai suggerimenti proattivi .

Richiedere una recensione per un'app

Novità di iOS 10.3, il RequestReview() metodo consente a un'app iOS di chiedere all'utente di valutarlo o esaminarlo. Anche se questo metodo può essere chiamato in qualsiasi punto in cui ha senso nell'esperienza utente, il processo di revisione è regolato e gestito dai criteri di App Store. Di conseguenza, questo metodo può o non visualizzare un avviso e non deve mai essere chiamato in risposta a un'azione dell'utente, ad esempio toccando un pulsante.

Per altre informazioni, vedi la guida alla revisione dell'app per le richieste.

Miglioramenti alla sicurezza e alla privacy

Apple ha apportato diversi miglioramenti sia alla sicurezza che alla privacy in iOS 10 che aiuteranno lo sviluppatore a migliorare la sicurezza delle proprie app e garantire la privacy dell'utente finale.

Di conseguenza, le app in esecuzione in iOS 10 (o versioni successive) devono dichiarare in modo statico la finalità di accedere a funzionalità o informazioni utente specifiche immettendo una o più chiavi specifiche della privacy nei file Info.plist che spiegano all'utente perché l'app vuole ottenere l'accesso.

Per altre informazioni, vedere la guida ai miglioramenti alla sicurezza e alla privacy.

SiriKit

Novità di iOS 10, SiriKit consente a un'app Xamarin.iOS di fornire servizi accessibili all'utente usando Siri in un dispositivo iOS. Questa funzionalità viene fornita in una o più estensioni dell'app usando i nuovi framework di finalità e finalità dell'interfaccia utente.

SiriKit supporta i domini di servizio seguenti:

  • Audio o videochiamate.
  • Prenotare un giro.
  • Gestione degli allenamenti.
  • Messaggistica.
  • Ricerca di foto.
  • Invio o ricezione di pagamenti.

Quando l'utente effettua una richiesta di Siri che coinvolge uno dei servizi dell'estensione dell'app, SiriKit invia l'estensione un oggetto Intent che descrive la richiesta dell'utente insieme ai dati di supporto. L'estensione dell'app genera quindi l'oggetto Response appropriato per la finalità specificata, che descrive in dettaglio come l'estensione può gestire la richiesta.

Anche se Siri gestisce in genere tutte le interazioni utente, l'estensione dell'app può usare il framework dell'interfaccia utente finalità per presentare un'interfaccia utente completa e personalizzata con informazioni aggiuntive e personalizzate dell'app.

Per saperne di più, vedi la guida Introduttiva a SiriKit .

Riconoscimento vocale

iOS 10 include una nuova API Voce che consente all'app di supportare il riconoscimento vocale continuo e trascrivere il parlato (da flussi audio live o registrati) in testo.

Poiché il riconoscimento vocale richiede la trasmissione e l'archiviazione temporanea dei dati nei server Apple, l'app deve richiedere l'autorizzazione dell'utente per eseguire il riconoscimento includendo la NSSpeechRecognitionUsageDescription chiave nel Info.plist file e chiamando il SFSpeechRecognizer.RequestAutorization metodo .

Per altre informazioni, vedere la guida Introduzione al riconoscimento vocale .

Notifiche utente

Novità di iOS 10, il framework di notifica utente consente il recapito e la gestione delle notifiche locali e remote. Usando questo framework, l'app o l'estensione dell'app può pianificare il recapito delle notifiche locali specificando un set di condizioni, ad esempio la posizione o l'ora del giorno.

Inoltre, l'app o l'estensione possono ricevere (e potenzialmente modificare) le notifiche locali e remote man mano che vengono recapitate al dispositivo iOS dell'utente.

Il nuovo framework dell'interfaccia utente di notifica utente consente all'app o all'estensione dell'app di personalizzare l'aspetto delle notifiche locali e remote quando vengono presentate all'utente.

Per altre informazioni, vedere la guida di User Notifications Framework .

Account sottoscrittore video

Novità per iOS 10, il framework dell'account del Sottoscrittore video consente alle app che supportano lo streaming autenticato o video on demand di eseguire l'autenticazione con il proprio provider tv via cavo o satellite usando un'esperienza single sign-in per l'utente finale.

Wide Color

iOS 10 estende il supporto per i formati di pixel di intervallo esteso e gli spazi di colore wide-gamut in tutto il sistema, inclusi framework come Core Graphics, Core Image, Metal e AVFoundation. Il supporto per i dispositivi con schermi a colori wide è ulteriormente facilitato fornendo questo comportamento nell'intero stack di grafica.

Inoltre, UIKit è stato modificato per funzionare nel nuovo spazio di colore sRGB esteso, semplificando la combinazione di colori in gamut a colori wide senza perdite significative di prestazioni.

Apple offre le procedure consigliate seguenti quando si lavora con colori ampi:

  • UIColor ora usa lo spazio colore sRGB e non blocca più i valori per l'intervallo 0.01.0 . Se l'app si basa sul comportamento di blocco precedente, sarà necessario modificarla per iOS 10.
  • L'ambiente di disegno verrà configurato per lo spazio colore sRGB quando si esegue un disegno personalizzato UIView su un iPad Pro.
  • Se l'app esegue il rendering personalizzato di UIImages, usare la nuova classe UIGraphicsImageRender per specificare l'uso dei formati di intervallo esteso o di intervallo standard.
  • Quando si usa un'API di basso livello, ad esempio Core Graphics o Metal per fornire l'elaborazione delle immagini, lo sviluppatore deve usare uno spazio di colori e un formato pixel di intervallo esteso che supporta valori a virgola mobile a 16 bit. Se necessario, lo sviluppatore dovrà bloccare manualmente i valori dei componenti colore.
  • Core Graphics, Core Image and Metal Performance Shader forniscono tutti nuovi metodi per la conversione tra i due spazi di colore.

Per saperne di più, vedi la guida Introduttiva a Colori wide.

Miglioramenti dei widget

Apple ha introdotto diversi miglioramenti al sistema widget per garantire che i widget siano ideali in qualsiasi sfondo presente nella nuova schermata di blocco di iOS 10. La proprietà NotificationCenterVibrancyEffect è stata deprecata ed è stata sostituita con le nuove proprietà WidgetPrimaryVibrancyEffect o WidgetSecondaryVibrancyEffect. Inoltre, i widget contengono ora una proprietà NCWidgetDisplayMode che consente allo sviluppatore di descrivere la quantità di contenuto disponibile e consente all'utente di espandere e comprimere il contenuto.

Per saperne di più, vedi la guida Ai miglioramenti del widget cerca e schermata iniziale.

Modifiche aggiuntive al framework

Oltre alle principali modifiche al framework e aggiunte elencate in precedenza, Apple ha apportato molte modifiche secondarie aggiuntive al framework in iOS 10.

Per altre informazioni, vedere la guida Modifiche aggiuntive al framework .

API deprecate

Le API seguenti sono state deprecate in iOS 10:

  • Le CKDiscoverAllContactsOperationclassi , CKDiscoverUserInfosOperationCKDiscoveredUserInfoe CKFetchRecordChangesOperation sono state deprecate in CloudKit per iOS 10. Usare invece le classi CKDiscoverAllUserIdentitiesOperation, CKUserIdentity e CKFetchRecordZoneChangesOperation (che supportano la condivisione dei record).
  • Sono state deprecate diverse API CKSubscription ( ad esempio sottoscrizioni basate su zona e basate su query). Usare invece le API CKRecordZoneSubscription e CKQuerySubscription .
  • I simboli NSPersistentStoreCoordinator correlati al contenuto onnipresente sono stati deprecati.
  • ADBannerViewi ADInterstitialAd simboli correlati nella classe UIViewController sono stati deprecati.
  • I simboli SKUniform correlati ai valori a virgola mobile sono stati deprecati.
  • Le UILocalNotificationclassi , UIMutableUserNotificationCategoryUIMutableUserNotificationAction, UIUserNotificationAction, UIUserNotificationCategory e UIUserNotificationSettings di UIKit sono state deprecate. Usare invece il framework notifiche utente.
  • I HandleActionForLocalNotificationmetodi , DidReceiveLocalNotificationHandleActionForRemoteNotificatione DidReceiveRemoteNotification WatchKit sono stati deprecati. Usare invece i HandleActionForNotification metodi e DidReceiveNotification .
  • I DidReceiveLocalNotification metodi e DidReceiveRemoteNotification di WKExtensionDelegate sono stati deprecati. Creare un'istanza di UNUserNotificationCenterDelegate che implementa i metodi appropriati e assegnarla alla Delegate proprietà dell'oggetto UNUserNotificationCenter .
  • L'app Game Center è stata deprecata e rimossa da iOS. Se l'app usa GameKit, deve presentare la propria interfaccia per visualizzare funzionalità gamekit, ad esempio classifiche e così via.

Per un elenco completo delle deprecazioni, vedere la documentazione relativa alle differenze tra le API iOS 9.3 e iOS 10.0 di Apple.