首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从催化剂中排除XCFramework?

如何从催化剂中排除XCFramework?
EN

Stack Overflow用户
提问于 2022-01-23 19:54:27
回答 1查看 322关注 0票数 0

鉴于此,

有一个iOS应用程序需要分析,它决定使用亚马逊作为提供商。所以我添加了扩容,它可以在iOS和模拟器上正常工作。但是,在构建Mac催化剂时,编译器会产生一组类似的错误,这些错误涉及到不同的XCFrameowrk‘:

在构建Mac催化剂时,没有在“.”中找到该平台的库。工件/AWSiOSSDKV2 2/AWSCore.xcframework‘。

快速搜索显示,亚马逊不想支持催化剂,因为商业原因和有一个开放的问题在这个主题,第一个公关提出了3年前,然后意外关闭。

试图避免错误

分析并不是绝对必要的特性,所以我尝试从催化剂中删除扩增库,并将它们保存在iOS上。我正在使用这个宏(它显然是编译时,而不是构建时,但一些这样的答案报告说,它可能会有所帮助):

代码语言:javascript
运行
复制
#if !TARGET_OS_MACCATALYST
import Amplify
import AWSPinpointAnalyticsPlugin
import AWSCognitoAuthPlugin
#endif

然后,在带有库的链接二进制文件中,我将与相关的libs设置为可选的。在过滤器部分,我删除了Mac催化剂附近的检查点,认为它只允许iOS:

所有这些技巧加在一起并没有帮助,我仍然得到同样的错误。

问:

如何排除某些不受支持的平台的XCFramework?

附注:

似乎,一个新的AWS SDK,声称支持催化剂,正在出现。但是它是原始的和低级的,我只是还没有准备好调试它,并在这个问题的范围内构建我自己的Analytis框架。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-20 23:10:40

我没有找到关于斯威夫特PM的确切答案但我能够解决我的问题,只是切换到好的旧(和更灵活的) cocoapods。我使用cocoapods.催化剂.载体来限制iOS的扩增。我的文件:

代码语言:javascript
运行
复制
require 'cocoapods-catalyst-support'

platform :ios, '14.1'
use_frameworks!

target 'MyApp' do
  pod 'Amplify'
  pod 'AmplifyPlugins/AWSPinpointAnalyticsPlugin'
  pod 'AmplifyPlugins/AWSCognitoAuthPlugin'

  target 'MyAppTests' do
    inherit! :search_paths
    pod 'Amplify'
    pod 'AmplifyPlugins/AWSPinpointAnalyticsPlugin'
    pod 'AmplifyPlugins/AWSCognitoAuthPlugin'
  end
end

catalyst_configuration do
  ios 'Amplify'
  ios 'AmplifyPlugins/AWSPinpointAnalyticsPlugin'
  ios 'AmplifyPlugins/AWSCognitoAuthPlugin'
end

post_install do |installer|
  installer.configure_catalyst
end

我基本上也做了同样的事情,@PaulBeusterien在评论中推荐,但是这个框架是由cocoapods而不是Firebase ReleaseTooling生成的。

Swift软件包管理器不支持平台过滤器,如2022年2月。我联系了斯威夫特论坛和亚马逊支持,也做了我自己的研究。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70826010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档