Благодаря Catalyst , наконец, можно портировать приложения на Mac. Проблема в том, что многие модули не поддерживают AppKit. Наиболее распространенным был бы Crashlytics / Firebase.
In [...]/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSInternalReport.o), building for Mac Catalyst, but linking in object file built for iOS Simulator, file '[...]/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics' for architecture x86_64
Поскольку это недавняя тема, я не смог найти документ о том, как удалить модуль из моей сборки для macOS, но сохранил его для iOS и iPadO S.
Можно использовать в коде:
#if !targetEnvironment(macCatalyst)
// Code to exclude for your macOS app
#endif
Но это одна часть проблемы, другая часть состоит в том, чтобы связать модуль только для iOS ...
Какой будет самый простой / лучший способ действий, когда библиотека не является жизненно важной для macOS, но все еще требуется для iOS?
if target.name.start_with?("Pods")
чтобы поймать все цели Pod.