项目中引入SRWebSocket库,但是Uniapp/UniMPSDK/Core/Libs/liblibWeex.a中有冲突无法编译运行;求助大佬?;若niapp/UniMPSDK/Core/Libs/liblibWeex.a中有封装的长链接则,需怎么链接收发消息等。报错部分日志如下:
duplicate symbol '_OBJCIVAR$_SRWebSocket._closeCode' in:
/Users/chaodeng/Library/Developer/Xcode/DerivedData/PackDy-eahusfrwdltvpcfmmoqkfuiklftl/Build/Intermediates.noindex/PackDy.build/Release-iphoneos/PackDy.build/Objects-normal/arm64/SRWebSocket.o
/Users/chaodeng/Desktop/shopStore/PackDy/Uniapp/UniMPSDK/Core/Libs/liblibWeex.a(SRWebSocket.o)
duplicate symbol '_OBJCIVAR$_SRWebSocket._failed' in:
/Users/chaodeng/Library/Developer/Xcode/DerivedData/PackDy-eahusfrwdltvpcfmmoqkfuiklftl/Build/Intermediates.noindex/PackDy.build/Release-iphoneos/PackDy.build/Objects-normal/arm64/SRWebSocket.o
/Users/chaodeng/Desktop/shopStore/PackDy/Uniapp/UniMPSDK/Core/Libs/liblibWeex.a(SRWebSocket.o)
duplicate symbol '_OBJCIVAR$_SRIOConsumer._bytesNeeded' in:
/Users/chaodeng/Library/Developer/Xcode/DerivedData/PackDy-eahusfrwdltvpcfmmoqkfuiklftl/Build/Intermediates.noindex/PackDy.build/Release-iphoneos/PackDy.build/Objects-normal/arm64/SRIOConsumer.o
/Users/chaodeng/Desktop/shopStore/PackDy/Uniapp/UniMPSDK/Core/Libs/liblibWeex.a(SRWebSocket.o)
duplicate symbol '_OBJCIVAR$_SRWebSocket._currentFrameData' in:
/Users/chaodeng/Library/Developer/Xcode/DerivedData/PackDy-eahusfrwdltvpcfmmoqkfuiklftl/Build/Intermediates.noindex/PackDy.build/Release-iphoneos/PackDy.build/Objects-normal/arm64/SRWebSocket.o
/Users/chaodeng/Desktop/shopStore/PackDy/Uniapp/UniMPSDK/Core/Libs/liblibWeex.a(SRWebSocket.o)
ld: 49 duplicate symbols for architecture arm64
用户3048937
- 发布:2026-05-01 09:13
- 更新:2026-05-01 09:14
- 阅读:19
1 个回复
Ask小助手 - Ask社区AI助手
该问题是因为
liblibWeex.a静态库中已经内置了SRWebSocket库,与项目中额外引入的SRWebSocket库产生了符号冲突(duplicate symbols)。解决方案如下:
推荐方案:使用 SDK 内置的 SRWebSocket
为了保证 SDK 功能的完整性,建议您移除项目中自己引入的
SRWebSocket库,改用 UniMPSDK 内置的版本。SRWebSocket.h、SRWebSocket.m或SRWebSocket.framework(或 CocoaPods 中的SocketRocket依赖)。SDK/inc路径下,将对应头文件引入到您的插件工程或原生代码中使用即可。替代方案:移除冲突符号(不推荐,除非必须使用特定版本)
如果您因特殊原因必须使用自己引入的
SRWebSocket版本,可以通过移除liblibWeex.a中的冲突符号来解决编译问题。具体操作方法可参考这篇文档:移除静态库中冲突符号的方法。注意事项
关于 liblibWeex.a 中长链接的使用
知识库中暂未找到关于
liblibWeex.a内部封装的 WebSocket 长链接具体如何收发消息的 API 文档。如果您需要使用 WebSocket 功能,建议通过 uni-app 的uni.connectSocket等 JS API 进行调用,或者开发 UTS 插件/原生插件来实现自定义的长连接逻辑。如需使用原生插件,可参考 UTS 插件 iOS 平台配置文档 进行系统库的依赖配置。要回复问题请先登录或注册
公告
更多>相关问题