Введение в macOS Sierra

Благодаря новой macOS Sierra разработчик может воспользоваться новыми API, которые позволяют конечным пользователям взаимодействовать с приложениями и веб-сайтами ранее недоступными способами. Например, Apple теперь позволяет веб-сайтам предоставлять клиентам возможность безопасно платить через Apple Pay и усовершенствования платформы Metal повысить потенциал графики и вычислений приложения.

Дополнительные сведения о macOS Sierra см. в документации apple по macOS + Apps .

Новые возможности macOS Sierra

Apple добавила несколько новых API и служб в macOS Sierra, а также множество улучшений существующих функций, в том числе:

Файловая система Apple

С macOS Sierra Apple выпустила новую файловую систему Apple в качестве современной файловой системы для iOS, macOS, tvOS и watchOS. Файловая система Apple оптимизирована для хранения флэш-памяти и SSD и предоставляет следующие функции: строгое шифрование, копирование метаданных на записи, совместное использование пространства, клонирование файлов и каталогов, моментальные снимки, быстрый размер каталога и примитивы для сохранения атомарного безопасного хранения.

Дополнительные сведения см. в руководстве По файловой системе Apple Apple.

Улучшения Apple Pay

Apple сделала несколько улучшений Apple Pay в macOS Sierra, которые позволяют пользователю выполнять безопасные платежи с веб-сайтов.

С macOS Sierra добавлены несколько новых API,которые работают с macOS Sierra, iOS и watchOS для поддержки динамических сетей оплаты и новой тестовой среды песочницы.

macOS Sierra включает новую платформу ApplePay Javascript, которая позволяет разработчику включить Apple Pay непосредственно в веб-сайты на основе iOS и macOS Safari. Для веб-сайтов, поддерживающих Apple Pay, пользователь может авторизовать оплату с помощью i Телефон или Apple Watch.

Дополнительные сведения см. в справочнике applePay JS Framework .

Создание современных приложений macOS

Современные приложения macOS, такие как веб-браузер Apple Safari, текстовый процессор Pages и электронный лист чисел используют множество новых технологий, чтобы представить унифицированный, контекстно-чувствительный пользовательский интерфейс, который не влияет на традиционные элементы пользовательского интерфейса, такие как плавающие панели и несколько открытых окон.

An example of a tabbed Mac window

Руководство по созданию современных приложений macOS охватывает несколько советов, функций и методов, которые разработчик может использовать для создания современного приложения macOS в Xamarin.Mac.

Общий доступ к данным CloudKit

Платформа CloudKit была расширена в macOS Sierra, чтобы пользователи могли быстро и легко обмениваться записями или наборами записей из своих частных баз данных iCloud.

CloudKit предоставляет полный пользовательский интерфейс для отправки и принятия приглашений на общую запись, и пользователь полностью контролирует чтение и запись пользователей, имеющих доступ к записям.

Дополнительные сведения см. в справочнике по CloudKit Framework Apple и справочнике по CloudKit JS Framework.

Внимание

Компания Apple предоставляет инструменты, которые помогают разработчикам надлежащим образом соблюдать Общий регламент по защите данных Европейского союза (GDPR).

Поддержка расширений приложений Safari

Расширения приложений Safari позволяют приложению расширить поведение веб-браузера Safari при тесной интеграции с macOS Sierra. Так как расширения приложений macOS Safari работают аналогично расширениям приложений Safari для iOS, они легко переносятся из одной системы в другую.

Дополнительные сведения см. в руководстве по программированию расширений приложений Apple Safari.

Улучшения безопасности и конфиденциальности

Apple сделала несколько улучшений безопасности и конфиденциальности в macOS Sierra, которые помогут приложению улучшить безопасность приложения и обеспечить конфиденциальность конечного пользователя, включая следующие:

  • Новый NSAllowsArbitraryLoadsInWebContent ключ можно добавить в файл приложения Info.plist и позволит веб-страницам правильно загружаться в то время как защита apple Transport Security (ATS) по-прежнему включена для остальной части приложения.
  • API Common Data Security Architecture (CDSA) устарел и должен быть заменен API SecKey для создания асимметричных ключей.
  • Для всех подключений SSL/TLS симметричный шифр RC4 теперь отключен по умолчанию. Кроме того, API безопасного транспорта больше не поддерживает SSLv3 и рекомендуется прекратить использование шифрования SHA-1 и 3DES как можно скорее.
  • Так как новый буфер обмена в iOS 10 и macOS Sierra позволяет пользователю копировать и вставлять данные между устройствами, API был развернут, чтобы разрешить буфер обмена ограничиваться определенным устройством и автоматически очищать метку времени в заданной точке. Кроме того, именованные вставки больше не сохраняются и должны быть заменены общими контейнерами вставки.
  • Если приложение обращается к защищенным данным (например, календарю пользователя), оно должно объявить это намерение с правильным ключом строкового значения назначения в файле Info.plist (NSCalendarUsageDescription в случае календаря).
  • Приложения с подписью разработчика, которые не доставляются через Mac App Store, теперь могут воспользоваться преимуществами CloudKit, iCloud Keychain, iCloud Drive, удаленных push-уведомлений, MapKit и VPN-прав.
  • macOS Sierra больше не поддерживает доставку внешнего кода или данных вместе с приложением-подписчиком кода в zip-архиве или образе диска без знака, так как путь среды выполнения не известен до выполнения.

Кроме того, приложения, работающие в macOS Sierra (или более поздних версиях), должны статически объявить свое намерение получить доступ к определенным функциям или сведениям о пользователе, введя один или несколько ключей конфиденциальности в своих Info.plist файлах, которые объясняют пользователю, почему приложение хочет получить доступ.

Так как macOS Sierra делится этими изменениями с iOS 10, ознакомьтесь с нашим руководством по улучшению безопасности и конфиденциальности iOS 10.

Поддержка расширения драйвера смарт-карт

С помощью macOS Sierra приложение может создавать NSExtension интеллектуальные карта драйверы на основе, которые позволяют получать доступ только для чтения к содержимому из определенных типов смарт-карта. Затем эти сведения отображаются в системе связка ключей (заменяя устаревший метод Common Data Security Architecture).

Дополнительные сведения см. в справочнике по Apple CryptoTokenKit Framework.

Единое ведение журнала

Единое ведение журнала предоставляет приложению один API для эффективного обмена сообщениями на всех уровнях системы. При использовании единого ведения журнала приложение имеет точный контроль над несколькими уровнями ведения журнала, включающих элементы управления конфиденциальностью и отслеживание действий для упрощения отладки.

Ведение журнала обеспечивает автоматическую корреляцию сообщений при совместном использовании отслеживания действий и ведения журнала.

macOS Sierra включает новое консольное приложение (в приложениях и служебных приложениях), которое может отображать данные журнала из нескольких источников, включая подключенные устройства. Он также поддерживает маркеризованные и сохраненные поиски и отображает подключения между связанными сообщениями в нескольких процессах.

Кроме того, сообщения журнала можно просматривать и поддерживать с помощью средств командной строки.

Дополнительные сведения см. в справочнике по журналам Apple.

Широкая цветовая палитра

macOS Sierra расширяет поддержку форматов пикселей с расширенным диапазоном и расширенных цветовых пространств, включая платформы Core Graphics, Core Image, Metal и AVFoundation. Поддержка устройств с широкоцветными дисплеями упрощается, обеспечивая это поведение во всем графическом стеке.

Кроме того, AppKit было изменено, чтобы работать в новом расширенном пространстве цветов sRGB , что упрощает сочетание цветов в широких цветных gamuts без значительной потери производительности.

Apple предлагает следующие рекомендации при работе с широкими цветами:

  • NSColor Теперь использует цветовое пространство sRGB и больше не зажимает значения для 0.01.0 диапазона. Если приложение зависит от предыдущего поведения зажимов, его необходимо изменить для macOS Sierra.
  • При использовании низкоуровневого API, например Core Graphics или Metal для обработки изображений, приложение должно использовать расширенное цветовое пространство диапазона и формат пикселей, поддерживающий 16-разрядные значения с плавающей запятой. При необходимости приложению потребуется вручную зажать значения цветового компонента.
  • Основные графические элементы, основные изображения и шейдеры производительности металла предоставляют новые методы для преобразования между двумя цветовыми пространствами.

Дополнительные сведения см. в руководстве по широкому цвету .

Дополнительные изменения платформы

Помимо основных изменений и дополнений, перечисленных выше, Apple сделала много дополнительных дополнительных дополнительных изменений платформы в macOS Sierra.

Дополнительные сведения см. в руководстве по дополнительным изменениям платформы.

Устаревшие интерфейсы API

Следующие API не рекомендуется использовать в macOS Sierra:

  • Файловая система HFS уровня "Стандартный" больше не поддерживается.

Полный список нерекомендуемых и изменений см. в документации по API Diffs для Apple версии 10.12.