【问题标题】:Installing OneSignal on React Native - linker command failed with exit code 1在 React Native 上安装 OneSignal - 链接器命令失败,退出代码为 1
【发布时间】:2019-06-16 05:57:20
【问题描述】:

我即将在我的 React Native 应用程序中安装 OneSignal。我已经使用the documentation 成功安装了 OneSignal(在没有“通知服务扩展”的列表中)。

然后我也开始按照文档安装“通知服务扩展”。但是,在我正确安装了“通知服务扩展”(按照 OneSignal 文档说明)(包括桥接头)后,我收到了一个错误。

我的错误位于OneSignalNotificationServiceExtension 的目标中。这是我的错误:

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_RCTSRWebSocket", referenced from:
      objc-class-ref in libReact.a(RCTInspectorPackagerConnection.o)
  "_OBJC_CLASS_$_RCTReconnectingWebSocket", referenced from:
      objc-class-ref in libReact.a(RCTPackagerConnection.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

显然是由OneSignalNotificationServiceExtension引起的:

但我不知道为什么以及如何解决这个问题.. Google 并没有真正帮助我.. 我的Header Search Paths 设置正确,如文档中所示:

Link Binary with Libraries 部分也是正确的!

Cocoapods 的部分也是如此,但我确实认为我的问题与 Link Binary with Libraries 部分有关......但是,我不知道如何解决这个问题..

不胜感激任何形式的帮助!

【问题讨论】:

  • 运气好,遇到同样的问题。

标签: xcode reactjs react-native linker-errors onesignal


【解决方案1】:

错误可能来自您的“测试”目标。很可能您在 Podfile 中没有完全设置。因此,它会尝试将您的 ServiceExtension 作为测试的一部分嵌入,并且您会收到此错误。

2 解决方案 - 不要构建测试,将其从架构的构建部分中删除。我个人不在我的 RN 项目中使用 xcode 测试,所以这是我的解决方案。

其他解决方案 - 在您的 Podfile 中为您的测试目标添加一个部分,并确保它包含所有需要的 RN 内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-01
    相关资源
    最近更新 更多