gpt4 book ai didi

ios - 使用 Catalyst 移植到 Mac 时排除 pod

转载 作者:行者123 更新时间:2023-12-03 01:07:05 25 4
gpt4 key购买 nike

借助 Catalyst,将应用程序移植到 Mac 终于成为可能,问题是,许多 pod 不支持 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 版本中删除 pod 并保留 iOS 和 iPadOS 的文档。

可以在代码中使用:

#if !targetEnvironment(macCatalyst) 
// Code to exclude for your macOS app
#endif

但是问题的一部分,另一部分是仅链接适用于 iOS 的 pod...

当该库对于 macOS 并不重要但在 iOS 上仍然需要时,最简单/最好的行动方案是什么?

最佳答案

对于处理 Catalyst 不支持的框架的最佳方法,你们应该阅读 Fernando Moya de Rivas 的解决方案,他有一个 github,里面有一个解决方案 here提供更多最新信息。

他基本上说你只需要定义一个数组,其中包含你不想在 mac osx 上安装的所有库,如下所示:['Fabric', 'Crashlytics', 'Firebase/Core', ...]

然后,你的 pod 文件可以看起来很简单:

# Podfile
load 'remove_unsupported_libraries.rb'

target 'My target' do
use_frameworks!
# Install your pods
pod ...
end

# define unsupported pods
def catalyst_unsupported_pods
['Fabric', 'Crashlytics', 'Firebase/Core', ...]
end

# Remove unsupported pods from your project
post_install do |installer|
installer.configure_support_catalyst
end

关于ios - 使用 Catalyst 移植到 Mac 时排除 pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58635911/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com