Porting iOS app to the Mac. Catalyst: Where to begin? by Yevhenii Peteliev
Yevhenii Peteliev has covered the basics of porting iPad apps to Mac, talked about common issues and situations when you definitely should think twice before porting the application.
Marzipan? % Introduction to Catalyst & Why do we need to use it? ' System features in macOS " How to port iOS App to the Mac? ( Understanding pitfalls ) Tips for beginners 2
the user interface While Macs use keyboard, mouse, and a growing number of trackpad gestures, iOS devices are touch-based. Both platforms use different UI code: AppKit on Mac and UIKit on iOS
evolution of the Simulator 5 It doesn’t use the Simulator architecture 4 It includes support for adding buttons to the window, menu bar, focus rings, and much more
macOS Mojave, Apple has opted not to make it available for developers because of its relative instability , Developers have already managed to create tools to bring iOS apps to macOS using Marzipan thanks to the Apple apps that were ported
port their iPad apps across to the Mac. It consists of new tools within Xcode and built-in Mac support for a huge number of APIs that will let your iOS apps run natively.
Mac version of your app Adds the App Sandbox Entitlement to your project Adds My Mac to the list of destinations that you can choose when running your app from Xcode Excludes incompatible frameworks, app extensions, and other embedded content
Go to the Frameworks, Libraries, and Embedded Content list under the General tab for your iOS target. Then select iOS as the platform setting for the item Incompatible frameworks
in macOS, enforced at the kernel level € It is designed to contain damage to the system and the user’s data if an app becomes compromised. Apps distributed through the Mac App Store must adopt App Sandbox AppSandbox •
a Catalyst target on your iPad app & Sandbox is not mandatory on macOS. You can disable it and then your app has much more leeway in what it can do on a users system. However, it is required if you want to ship your app on the macOS App Store AppSandbox ‚