Передача додатків на Mac нарешті можлива завдяки Catalyst , проблема полягає в тому, що численні стручки не підтримують 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.