Runtime error: dyld: Library not loaded: @rpath/AWSCore.framework/AWSCore

Runtime error: dyld: Library not loaded: @rpath/AWSCore.framework/AWSCore

我正在为 iOS (2.2.3) 使用 AWS Mobile Analytics。 运行ning pod 更新后,我在物理设备上尝试 运行 MyApp 时遇到以下错误:

dyld: Library not loaded: @rpath/AWSCore.framework/AWSCore Referenced from: /private/var/mobile/Containers/Bundle/Application/4582B679-A162-47CE-80ED-58C8B9BB231B/MyApp.app/MyApp Reason: Incompatible library version: MyApp requires version 2.0.0 or later, but AWSCore provides version 1.0.0

我的 AWS Mobile Analytics 库的 cocoapods pod 文件条目是:

pod 'AWSMobileAnalytics'

我试过递减 AWSMobileAnalytics 版本 (pod 'AWSMobileAnalytics', '2.2.2'),但我仍然遇到同样的错误。有谁知道如何解决这个问题?

我清除了 DerivedData 文件夹 (/Users/me/Library/Developer/Xcode/DerivedData/),然后重新构建了应用程序,它成功了。

编辑

我在尝试向我的项目添加新的主要目标时再次遇到此错误。当这样定义 Podfile 时,我会得到与上面相同的错误:

target 'MainTarget' do
    pod 'MyCocoapod'
    target 'SecondMainTarget' do
        inherit! :search_paths
    end
end

为了解决这个问题,我必须像这样定义 Podfile:

def my_pods
    pod 'MyCocoapod'
end

target 'MainTarget' do
    my_pods
end

target 'SecondMainTarget' do
    my_pods
end

尝试删除 Podfile.lock 文件,然后执行 pod install

我按照 http://docs.aws.amazon.com/mobile/sdkforios/developerguide/setup-aws-sdk-for-ios.html

中详述的框架安装过程解决了这个问题

这是我忘记做的嵌入式二进制文件。

我通过取消选中 'Run script only when installing' 解决了这个问题,它可以在项目 Targets

的构建阶段部分的 [CP] 嵌入 Pods 框架下找到

确保你设置的路径如下