Хотя Mac и iPad остаются отдельными продуктами, Apple продолжает сокращать разрыв между своими настольными и мобильными платформами. Например, в 2014 году она представила функции Continuity, такие как Handoff и Universal Clipboard, которые обеспечивают более бесшовную работу на Mac, iPad и других устройствах Apple.
Следующим шагом в этом процессе является Project Catalyst, который значительно упрощает разработчикам расширение приложений для iPad на Mac.
Начиная с macOS Catalina и Xcode 11, разработчики могут создавать версию приложения iPad для Mac, используя UIKit — фреймворк Apple, который до сих пор предназначался исключительно для приложений iOS. Добавление поддержки macOS к приложению iPad так же просто, как открытие проекта Xcode и установка флажка Mac в разделе General > Deployment Info.
Хотя версия приложения для Mac должна работать после установки флажка, это не всегда так, поскольку проект Xcode может содержать код, который больше не компилируется из-за фреймворков, API или встраиваемого содержимого, несовместимого с Mac, согласно документации для разработчиков Apple:
Большинство приложений для iPad отлично подходят для адаптации, но некоторые полагаются на функции iPad, которых нет на Mac. Например, если основные функции вашего приложения требуют возможностей iPad, таких как гироскоп, акселерометр или задняя камера, фреймворки iOS, такие как HealthKit или ARKit, или если основная функция приложения — это что-то вроде навигации, оно может не подходить для Mac.
У Apple есть инструкции по устранению этих проблем совместимости.
Приложения iPad, перенесенные на macOS, работают нативно на Mac, используя те же фреймворки, ресурсы и среду выполнения, что и традиционные приложения Mac, согласно документации для разработчиков Apple:
Версия вашего приложения для iPad для Mac поддерживает многие системные функции macOS без каких-либо усилий с вашей стороны…
— Меню по умолчанию для вашего приложения.
— Поддержка трекпада, мыши и клавиатуры.
— Поддержка изменения размера окна и полноэкранного режима.
— Полосы прокрутки в стиле Mac.
— Поддержка копирования и вставки.
— Поддержка перетаскивания.
— Поддержка системных элементов управления Touch Bar.
Обновленные Руководства по человеческому интерфейсу от Apple являются полезным ресурсом для проектирования и кодирования идеального приложения iPad для Mac.
Если все это звучит знакомо, то это потому, что Project Catalyst — это общедоступное название Apple для этой инициативы, которая до сих пор называлась внутренним именем Marzipan. Планы Apple по облегчению запуска приложений iOS на Mac были впервые сообщены Марком Гурманом из Bloomberg более 18 месяцев назад.
Apple впервые показала нам Project Catalyst, когда перенесла версии своих приложений Apple News, Home, Stocks и Voice Memos для iPad на Mac в прошлом году в macOS Mojave. Сторонние разработчики теперь могут последовать этому примеру в macOS Catalina, которая выйдет для широкой публики осенью.