Einführung in macOS Sierra

Mit dem neuen macOS Sierra kann der Entwickler von neuen APIs profitieren, die es dem Endbenutzer ermöglichen, mit seinen Apps und Websites auf bisher nicht verfügbare Weise zu interagieren. Beispielsweise ermöglicht Apple jetzt Websites, kunden die Möglichkeit zu geben, über Apple Pay sicher zu bezahlen, und Verbesserungen des Metal-Frameworks erhöhen das Grafik- und Computingpotenzial einer App.

Weitere Informationen zu macOS Sierra finden Sie in der Dokumentation zu macOS + Apps von Apple.

Neuerungen in macOS Sierra

Apple hat mehrere neue APIs und Dienste in macOS Sierra hinzugefügt, zusammen mit vielen Verbesserungen an vorhandenen Features, einschließlich:

Apple-Dateisystem

Mit macOS Sierra hat Apple das neue Apple File System als modernes Dateisystem für iOS, macOS, tvOS und watchOS veröffentlicht. Das Apple File System wurde für Flash- und SSD-Speicher optimiert und bietet die folgenden Features: starke Verschlüsselung, Kopier-beim-Schreib-Metadaten, Speicherplatzfreigabe, Klonen von Dateien und Verzeichnissen, Momentaufnahmen, schnelle Verzeichnisdimensionierung und atomare Grundtypen für sicheres Speichern.

Weitere Informationen finden Sie im Apple-Dateisystemhandbuch von Apple.

Apple Pay-Verbesserungen

Apple hat mehrere Verbesserungen an Apple Pay in macOS Sierra vorgenommen, die es dem Benutzer ermöglichen, sichere Zahlungen von Websites aus zu tätigen.

Mit macOS Sierra wurden mehrere neue APIs hinzugefügt, die mit macOS Sierra, iOS und watchOS funktionieren, um dynamische Zahlungsnetzwerke und eine neue Sandbox-Testumgebung zu unterstützen.

macOS Sierra enthält das neue ApplePay-JavaScript-Framework, das es dem Entwickler ermöglicht, Apple Pay direkt in iOS- und macOS Safari-basierte Websites zu integrieren. Für Websites, die Apple Pay unterstützen, kann der Benutzer die Zahlung entweder mit dem iPhone oder der Apple Watch autorisieren.

Weitere Informationen finden Sie in der ApplePay JS Framework-Referenz .

Erstellen moderner macOS-Apps

Moderne macOS-Apps wie Apples Safari-Webbrowser, Seiten-Textverarbeitung und Zahlenspreize verwenden viele neue Technologien, um eine einheitliche, kontextsensitive Benutzeroberfläche zu präsentieren, die herkömmliche Ui-Elemente wie schwebende Panels und mehrere geöffnete Fenster wegnimmt.

Ein Beispiel für ein Mac-Fenster mit Registerkarten

Unser Leitfaden zum Erstellen moderner macOS-Apps enthält mehrere Tipps, Features und Techniken, mit der Entwickler eine moderne macOS-App in Xamarin.Mac erstellen können.

CloudKit-Datenfreigabe

Das CloudKit-Framework wurde in macOS Sierra erweitert, damit Benutzer Datensätze oder Datensätze aus ihren privaten iCloud-Datenbanken schnell und einfach freigeben können.

CloudKit bietet eine vollständige Benutzeroberfläche zum Senden und Annehmen von Einladungen zu freigegebenen Datensätzen, und der Benutzer hat die vollständige Lese-/Schreibkontrolle über die Personen, die Zugriff auf die Datensätze haben.

Weitere Informationen finden Sie unter Apples CloudKit Framework-Referenz und CloudKit JS Framework-Referenz.

Wichtig

Apple stellt Tools zur Verfügung, die Entwickler dabei unterstützen, die Datenschutz-Grundverordnung (DSGVO) der Europäischen Union umzusetzen.

Unterstützung für Safari-App-Erweiterungen

Safari-App-Erweiterungen ermöglichen es der App, das Verhalten des Safari-Webbrowsers zu erweitern und gleichzeitig eng in macOS Sierra integriert zu sein. Da macOS Safari App-Erweiterungen ähnlich wie iOS Safari App-Erweiterungen funktionieren, lassen sie sich einfach von einem System auf ein anderes portieren.

Weitere Informationen finden Sie im Programmierhandbuch für die Safari-App-Erweiterung von Apple.

Sicherheits- und Datenschutzverbesserungen

Apple hat mehrere Verbesserungen an Sicherheit und Datenschutz in macOS Sierra vorgenommen, die der App helfen, die Sicherheit der App zu verbessern und die Privatsphäre des Endbenutzers zu gewährleisten, einschließlich der folgenden:

  • Der neue NSAllowsArbitraryLoadsInWebContent Schlüssel kann der Datei der App Info.plist hinzugefügt werden und ermöglicht das ordnungsgemäße Laden von Webseiten, während der Schutz von Apple Transport Security (ATS) für den Rest der App weiterhin aktiviert ist.
  • Die CDSA-API (Common Data Security Architecture) ist veraltet und sollte durch die SecKey-API ersetzt werden, um asymmetrische Schlüssel zu generieren.
  • Für alle SSL/TLS-Verbindungen ist die symmetrische RC4-Verschlüsselung jetzt standardmäßig deaktiviert. Darüber hinaus unterstützt die Secure Transport-API SSLv3 nicht mehr und es wird empfohlen, die Verwendung der SHA-1- und 3DES-Kryptografie von der App so schnell wie möglich einzustellen.
  • Da die neue Zwischenablage in iOS 10 und macOS Sierra es dem Benutzer ermöglicht, zwischen Geräten zu kopieren und einzufügen, wurde die API erweitert, um eine Zwischenablage auf ein bestimmtes Gerät zu beschränken und zeitstempelt zu werden, um an einem bestimmten Punkt automatisch gelöscht zu werden. Darüber hinaus werden benannte Pasteboards nicht mehr beibehalten und sollten durch die freigegebenen Pasteboardcontainer ersetzt werden.
  • Wenn die App auf geschützte Daten zugreift (z. B. den Kalender des Benutzers), muss sie diese Absicht mit dem richtigen Zweckzeichenfolgenwertschlüssel in ihrer Info.plist Datei deklarieren (NSCalendarUsageDescription im Fall des Kalenders).
  • Entwickler Signierte Apps, die nicht über den Mac App Store bereitgestellt werden, können jetzt cloudKit, iCloud Keychain, iCloud Drive, Remote-Pushbenachrichtigungen, MapKit und VPN-Berechtigungen nutzen.
  • macOS Sierra unterstützt nicht mehr die Übermittlung von externem Code oder Daten zusammen mit der Code signer-App in ihrem ZIP-Archiv oder einem nicht signierten Datenträgerimage, da der Laufzeitpfad vor der Runtime nicht bekannt ist.

Darüber hinaus müssen Apps, die unter macOS Sierra (oder höher) ausgeführt werden, statisch ihre Absicht zum Zugriff auf bestimmte Features oder Benutzerinformationen deklarieren, indem sie einen oder mehrere datenschutzspezifische Schlüssel in ihre Info.plist Dateien eingeben, die dem Benutzer erklären, warum die App Zugriff erhalten möchte.

Da macOS Sierra diese Änderungen mit iOS 10 teilt, finden Sie weitere Informationen in unserem Leitfaden zu Sicherheits- und Datenschutzverbesserungen für iOS 10.

Unterstützung für Smartcardtreibererweiterungen

Mit macOS Sierra kann die App basierende smarte Karte-Treiber erstellenNSExtension, die schreibgeschützten Zugriff auf die Inhalte bestimmter Arten von Smartcards ermöglichen. Diese Informationen werden dann im System Keychain angezeigt (ersetzt die veraltete Common Data Security Architecture-Methode).

Weitere Informationen finden Sie unter Apples CryptoTokenKit Framework-Referenz.

Einheitliche Protokollierung

Unified Logging bietet der App eine einzige API für effizientes Messaging auf allen Systemebenen. Mit der einheitlichen Protokollierung verfügt die App über eine differenzierte Kontrolle über mehrere Protokollierungsebenen, einschließlich Datenschutzsteuerelementen und Aktivitätsnachverfolgung, um das Debuggen zu vereinfachen.

Die Protokollierung bietet eine automatische Nachrichtenkorrelation, wenn Aktivitätsnachverfolgung und -protokollierung zusammen verwendet werden.

macOS Sierra enthält eine neue Konsolen-App (unter Anwendungen/Hilfsprogramme), mit der Protokolldaten aus mehreren Quellen, einschließlich verbundener Geräte, angezeigt werden können. Es unterstützt auch tokenisierte und gespeicherte Suchvorgänge und zeigt Verbindungen zwischen verwandten Nachrichten über mehrere Prozesse hinweg an.

Darüber hinaus können Protokollmeldungen mithilfe von Befehlszeilentools angezeigt und verwaltet werden.

Weitere Informationen finden Sie in der Protokollierungsreferenz von Apple.

Breite Farbskala

macOS Sierra erweitert die Unterstützung für Pixelformate mit erweitertem Bereich und farbliche Bereiche im gesamten System, einschließlich Frameworks wie Core Graphics, Core Image, Metal und AVFoundation. Die Unterstützung für Geräte mit breitfarbigen Displays wird weiter vereinfacht, indem dieses Verhalten im gesamten Grafikstapel bereitgestellt wird.

Darüber hinaus wurde geändert, AppKit um im neuen erweiterten sRGB-Farbraum zu arbeiten, sodass Es einfacher ist, Farben in breiten Farbskala ohne erheblichen Leistungsverlust zu mischen.

Apple bietet die folgenden bewährten Methoden für die Arbeit mit breiten Farben:

  • NSColor verwendet jetzt den sRGB-Farbraum und klammert keine Werte mehr in den 0.0 Bereich ein 1.0 . Wenn die App auf dem vorherigen Klemmverhalten basiert, muss sie für macOS Sierra geändert werden.
  • Wenn Sie eine low-level-API wie Core Graphics oder Metal für die Bildverarbeitung verwenden, sollte die App einen erweiterten Farbraum und ein Pixelformat verwenden, das 16-Bit-Gleitkommawerte unterstützt. Bei Bedarf muss die App farbkomponentenwerte manuell klemmen.
  • Core Graphics, Core Image und Metal Performance Shader bieten neue Methoden zum Konvertieren zwischen den beiden Farbräumen.

Weitere Informationen finden Sie in unserem Leitfaden einführung in Wide Color .

Zusätzliche Frameworkänderungen

Zusätzlich zu den oben aufgeführten wichtigen Frameworkänderungen und Ergänzungen hat Apple viele zusätzliche kleinere Frameworkänderungen in macOS Sierra vorgenommen.

Weitere Informationen finden Sie in unserem Leitfaden zu zusätzlichen Frameworkänderungen .

Nicht mehr unterstützte APIs

Die folgenden APIs sind in macOS Sierra veraltet:

  • Das HFS-Standarddateisystem wird nicht mehr unterstützt.

Eine vollständige Liste mit veralteten Änderungen finden Sie in der Dokumentation zu api-Diffs für MacOS v10.12 von Apple.