dyld:未加载库:@ rpath / Realm.framework / Realm

时间:2018-02-21 21:07:30

标签: swift realm dyld

我在实际硬件上运行基于Realm的Swift应用程序时遇到问题。我一直在" dyld:未加载库:@ rpath / Realm.framework / Realm"当应用程序启动时,会导致SIGABRT dyld`__abort_with_payload。该应用程序在模拟器上运行良好。我已经按照Realm Swift网站上的步骤,将框架拖入嵌入式框架,添加了构建阶段脚本,添加了单元测试目标的框架路径。我在这里有点不知所措。我正在使用xcode 9,iPhone 7 iOS 11。

3 个答案:

答案 0 :(得分:2)

这是解决我的问题的原因:

  1. 注销xcode首选项 - >帐户
  2. 在Mac上打开钥匙串应用程序并删除所有iOS开发证书。
  3. 重启mac。
  4. 打开xcode,然后使用Apple ID偏好设置 - >帐户
  5. 重新登录
  6. 转到应用目标 - >常规并确保选中“自动管理签名”并选择正确的小组。
  7. 运行应用程序,会弹出一条消息,说明在钥匙串中找不到证书(类似的东西)。只需继续,当它警告您需要首先撤销证书时,请选择撤销。
  8. 此时,问题已经消失,应用程序正在运行。

    对于我在op的评论中提到的问题,解决方法是单击app target-> Build Phases并将Run Script拖到列表的底部。它必须在嵌入式框架之后运行!这是我调试原始问题和删除/添加领域框架的副作用。在这之后,运行脚本现在在列表中排在倒数第二位。

答案 1 :(得分:0)

我已经通过简单的技术解决了这个问题。

消除此领域错误的步骤:

第一步:

  1. 注释pod // pod'RealmSwift'的行
  2. 在终端“ pod install”中运行命令

第二步:

  1. 取消注释pod // pod'RealmSwift'

  2. 的行
  3. 在终端

  4. 中运行命令

答案 2 :(得分:0)

我在Xcode 11.4中遇到了同样的问题,并通过编辑pod文件修复了该问题

platform :ios, '13.0'

target 'MoneyLeft' do
  #use_frameworks! -> !!! very important

  pod 'Realm', :modular_headers => true
  pod 'RealmSwift', :modular_headers => true

end