我即将将 OneSignal 安装到我的 React Native 应用程序中。我已成功安装 OneSignal the documentation (在没有“通知服务扩展”的列表中)。
然后我也开始按照文档安装“通知服务扩展”。但是,在我正确安装“通知服务扩展”(遵循 OneSignal 文档说明)(包括桥接 header )后,出现错误。
我的错误位于 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
引起的:
但我不知道为什么以及如何解决这个问题..谷歌并没有真正帮助我..
我的标题搜索路径
设置正确,如文档中所示:
链接二进制文件与库
部分也正确完成!
以及Cocoapods
部分,但我确实认为我的问题与Link Binary with Libraries
部分有关......但是,我不知道如何解决这个问题..
非常感谢任何形式的帮助!
最佳答案
错误可能来自您的“测试”目标。很可能您的 Podfile 中没有完整的设置。因此,它尝试将您的 ServiceExtension 嵌入到您的测试中,您会收到此错误。
2 解决方案 - 不要构建测试,将其从架构的构建部分中删除。我个人不在我的 RN 项目中使用 xcode 测试,所以这是我的解决方案。
其他解决方案 - 在 Podfile 中包含一个用于测试目标的部分,并确保它包含所需的所有 RN 内容。
关于xcode - 在 React Native 上安装 OneSignal - 链接器命令失败,退出代码为 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54313771/