Introduzione a macOS Sierra

Con il nuovo macOS Sierra, lo sviluppatore può sfruttare le nuove API che consentono all'utente finale di interagire con le app e i siti Web in modi precedentemente non disponibili. Ad esempio, Apple ora consente ai siti Web di offrire ai clienti la possibilità di pagare in modo sicuro tramite Apple Pay e miglioramenti al framework Metal aumentare la grafica e il calcolo di un'app.

Per altre informazioni su macOS Sierra, vedere la documentazione macOS + Apps di Apple.

Novità di macOS Sierra

Apple ha aggiunto diverse nuove API e servizi in macOS Sierra insieme a numerosi miglioramenti alle funzionalità esistenti, tra cui:

Apple File System

Con macOS Sierra, Apple ha rilasciato il nuovo File System Apple come file system moderno per iOS, macOS, tvOS e watchOS. Apple File System è stato ottimizzato per l'archiviazione Flash e SSD e offre le funzionalità seguenti: crittografia avanzata, metadati di copia su scrittura, condivisione dello spazio, clonazione per file e directory, snapshot, ridimensionamento rapido delle directory e primitive di salvataggio sicuro atomico.

Per altre informazioni, vedere Apple File System Guide (Guida al file system Apple).

Miglioramenti di Apple Pay

Apple ha apportato diversi miglioramenti a Apple Pay in macOS Sierra che consentono all'utente di effettuare pagamenti sicuri dai siti Web.

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

macOS Sierra include il nuovo framework JavaScript ApplePay che consente allo sviluppatore di incorporare Apple Pay direttamente nei siti Web basati su iOS e macOS Safari. Per i siti Web che supportano Apple Pay, l'utente può autorizzare il pagamento usando i Telefono o Apple Watch.

Per altre informazioni, vedere le informazioni di riferimento sul framework JS ApplePay di Apple.

Creazione di app macOS moderne

Le moderne app macOS come il Web browser Safari di Apple, il word processor pages e il foglio di diffusione Numeri usano molte nuove tecnologie per presentare un'interfaccia utente unificata e sensibile al contesto che elimina gli elementi dell'interfaccia utente tradizionali, ad esempio pannelli mobili e più finestre aperte.

An example of a tabbed Mac window

La guida alla creazione di app macOS moderne illustra diversi suggerimenti, funzionalità e tecniche che uno sviluppatore può usare per creare un'app macOS moderna in Xamarin.Mac.

Condivisione dei dati di CloudKit

Il framework CloudKit è stato ampliato in macOS Sierra per consentire all'utente di condividere facilmente record o set di record dai database iCloud privati.

CloudKit offre un'interfaccia utente completa per l'invio e l'accettazione di inviti ai record condivisi e l'utente ha un controllo di lettura/scrittura completo sulle persone che hanno accesso ai record.

Per altre informazioni, vedere Informazioni di riferimento sul framework CloudKit di Apple e Informazioni di riferimento sul framework JS di CloudKit.

Importante

Apple fornisce strumenti per aiutare gli sviluppatori a gestire correttamente il Regolamento generale sulla protezione dei dati (GDPR) dell'Unione Europea.

Supporto delle estensioni dell'app Safari

Le estensioni dell'app Safari consentono all'app di estendere il comportamento del Web browser Safari, pur essendo strettamente integrato con macOS Sierra. Poiché le estensioni dell'app Safari macOS funzionano in modo simile alle estensioni dell'app Safari per iOS, sono facili da convertire da un sistema a un altro.

Per altre informazioni, vedere la Guida alla programmazione dell'estensione per le app Safari di Apple.

Miglioramenti alla sicurezza e alla privacy

Apple ha apportato diversi miglioramenti alla sicurezza e alla privacy in macOS Sierra che consentiranno all'app di migliorare la sicurezza dell'app e garantire la privacy dell'utente finale, inclusi i seguenti:

  • La nuova NSAllowsArbitraryLoadsInWebContent chiave può essere aggiunta al file dell'app e consentirà il caricamento corretto delle Info.plist pagine Web mentre la protezione di Apple Transport Security (ATS) è ancora abilitata per il resto dell'app.
  • L'API Common Data Security Architecture (CDSA) è stata deprecata e deve essere sostituita con l'API SecKey per generare chiavi asimmetriche.
  • Per tutte le connessioni SSL/TLS, la crittografia simmetrica RC4 è ora disabilitata per impostazione predefinita. Inoltre, l'API Trasporto sicuro non supporta più SSLv3 ed è consigliabile interrompere l'uso della crittografia SHA-1 e 3DES il prima possibile.
  • Poiché i nuovi Appunti in iOS 10 e macOS Sierra consentono all'utente di copiare e incollare tra dispositivi, l'API è stata espansa per consentire a un clipboard di essere limitato a un dispositivo specifico e di essere cancellato automaticamente in un determinato punto. Inoltre, le lavagne denominate non sono più persistenti e devono essere sostituite con i contenitori di incollaboard condivisi.
  • Se l'app accede ai dati protetti (ad esempio il calendario dell'utente), deve dichiarare tale finalità con la chiave del valore della stringa di scopo corretta nel file Info.plist (NSCalendarUsageDescription nel caso del calendario).
  • Le app firmate dagli sviluppatori non recapitate tramite Mac App Store possono ora sfruttare CloudKit, iCloud Keychain, iCloud Drive, notifiche push remote, MapKit e diritti VPN.
  • macOS Sierra non supporta più la distribuzione di codice o dati esterni insieme all'app di firma del codice nell'archivio ZIP o nell'immagine del disco non firmato perché il percorso di runtime non è noto prima del runtime.

Inoltre, le app in esecuzione in macOS Sierra (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.

Poiché macOS Sierra condivide queste modifiche con iOS 10, vedere la guida ai miglioramenti per la sicurezza e la privacy di iOS 10 per altre informazioni.

Supporto dell'estensione driver smart card

Con macOS Sierra, l'app può creare NSExtension driver di smart card basati che consentono l'accesso in sola lettura al contenuto da determinati tipi di smart card. Queste informazioni vengono quindi presentate all'interno del keychain di sistema (sostituendo il metodo Common Data Security Architecture deprecato).

Per altre informazioni, vedere Le informazioni di riferimento sul framework CryptoTokenKit di Apple.

Registrazione unificata

Registrazione unificata fornisce all'app una singola API per una messaggistica efficiente in tutti i livelli del sistema. Con Registrazione unificata l'app ha un controllo granulare su più livelli di registrazione che includono controlli di privacy e rilevamento delle attività per semplificare il debug.

La registrazione fornisce la correlazione automatica dei messaggi quando il rilevamento e la registrazione delle attività vengono usati insieme.

macOS Sierra include una nuova app console (in Applicazioni/Utilità) in grado di visualizzare i dati di log da più origini, inclusi i dispositivi connessi. Supporta inoltre ricerche in token e salvate e visualizza le connessioni tra messaggi correlati tra più processi.

Inoltre, i messaggi di log possono essere visualizzati e gestiti usando gli strumenti da riga di comando.

Per altre informazioni, vedere Le informazioni di riferimento sulla registrazione di Apple.

Wide Color

macOS Sierra estende il supporto per i formati di pixel di intervallo esteso e gli spazi di colori a gamma estesa 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, AppKit è 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:

  • NSColor 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 precedente del blocco, sarà necessario modificarla per macOS Sierra.
  • Quando si usa un'API di basso livello, ad esempio Core Graphics o Metal per fornire l'elaborazione delle immagini, l'app deve usare uno spazio di colori e un formato pixel di intervallo esteso che supporta valori a virgola mobile a 16 bit. Se necessario, l'app dovrà bloccare manualmente i valori dei componenti del 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.

Modifiche aggiuntive al framework

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

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

API deprecate

Le API seguenti sono state deprecate in macOS Sierra:

  • Il file system standard HFS non è più supportato.

Per un elenco completo delle deprecate e delle modifiche, vedere la documentazione relativa alle differenze dell'API macOS v10.12 di Apple.