云打包
- 发布:2026-06-08 15:58
- 更新:2026-06-08 17:21
- 阅读:46
产品分类: uniapp/App
PC开发环境操作系统: Mac
PC开发环境操作系统版本号: 15.7.4
HBuilderX类型: Alpha
HBuilderX版本号: 5.12
手机系统: iOS
手机系统版本号: iOS 26
手机厂商: 苹果
手机机型: iPhone11
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
操作步骤:
预期结果:
正常打包
正常打包
实际结果:
报错
报错
bug描述:
https://app.liuyingyong.cn/build/errorLog/6b3b70c0-630d-11f1-bb37-99b639d11955
APP中包含有APPSecuritySDK这个库,使用云打包必然报错:
duplicate symbol '_ASS_TID' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_OBJCCLASS$_APSecureSdk' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_USERID' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_OBJCIVAR$_APSecureSdk._hasInited' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_RPC_APPID' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_ENCODE_UMID' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_ENVIRONMENT_ONLINE' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_ENVIRONMENT' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_OBJCMETACLASS$_APSecureSdk' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_OBJCIVAR$_APSecureSdk._asyncTaskQueue' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_RPC_GATEWAY_ADDR' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
duplicate symbol '_ASS_RPC_WORKSPACEID' in:
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]8
[PackagePath]/wgtRoot/UNID8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK[arm64]7
ld: 16 duplicate symbols
z***@caih.com (作者)
不是,我充了这么多钱,每次都是失败。每次失败都扣钱,这有点吃相难看了
https://app.liuyingyong.cn/build/errorLog/6a3bf3b0-631a-11f1-98a2-d12f20307fb8
欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。
好的,我们来分析一下这个 Bug 反馈。
反馈内容评审
这个 Bug 反馈的质量整体不错,但有几个可以优化的地方:
- BUG 描述:描述非常清晰,直接给出了云打包的错误日志链接和具体的报错信息。
duplicate symbol的错误指向明确,是AP-FaceDetectModule插件中的APPSecuritySDK.framework库内部符号冲突。任何 iOS 开发者都能看懂这是典型的链接时符号重复问题。 - 代码示例:缺失。反馈者没有提供复现该问题的最小化工程或相关配置。虽然对于这类打包错误,核心问题在于原生库的配置,但提供一个简单的 demo 工程能帮助官方人员更快地定位问题。
- 复现步骤:过于简单,仅写了“云打包”。这个步骤虽然直接,但不够严谨,没有说明是从哪个版本开始出现的问题,或者是否进行了特定操作(如刚引入插件、升级 HBuilderX 等)。
- 预期结果:合理,预期是“正常打包”。
- 实际结果:提供的报错是真实的链接错误,非误报。
- 分类信息:比较完整,提供了 HBuilderX 版本(Alpha 5.12)、操作系统(Mac 15.7.4)、目标平台(iOS)等关键信息。但操作系统版本号
15.7.4看起来像是 macOS 版本,而 iOS 系统版本写的是iOS 26,这是一个不存在的版本,属于填写错误。
Bug 是否成立及分析
Bug 成立。这是一个由原生插件内部库文件冲突导致的 iOS 云打包失败问题。
从错误日志来看,所有 duplicate symbol 都指向同一个文件:
[PackagePath]/wgtRoot/__UNI__D8C65ED/nativeplugins/AP-FaceDetectModule/ios/APPSecuritySDK.framework/APPSecuritySDK
并且错误发生在同一个 framework 的 [arm64][8] 和 [arm64][7] 两个不同索引的 .o 文件之间。这通常意味着 APPSecuritySDK.framework 这个库本身在构建时,其内部就包含了重复的符号,或者该 framework 被错误地多次链接了。
根据知识库中的信息,DCloud 官方文档对于依赖库冲突 duplicate symbols 问题有明确的说明和解决方案: Q: 依赖库冲突 “duplicate symbols for ...”。
问题分析与解决方案
这个问题的根源在于 AP-FaceDetectModule 插件提供的 APPSecuritySDK.framework 文件本身存在问题。
-
首要方案:联系插件作者。这是最根本的解决办法。根据知识库中提到的 ios > 常见问题 > Q: 依赖库冲突 “duplicate symbols for ...”,最直接的方法是建议插件作者移除其插件中与SDK内置库冲突的三方库,或者检查
APPSecuritySDK.framework的构建过程,确保其内部没有重复的目标文件(.o 文件)。用户需要将此错误日志反馈给AP-FaceDetectModule插件的作者,等待其更新插件。 -
临时方案(自行排查):
- 可以尝试参考文档中提到的 这篇文档 的方法,手动移除
APPSecuritySDK.framework中导致冲突的符号。但这属于高级操作,有一定风险,可能影响功能,操作前请务必备份。 - 在 ask 社区中,有用户遇到了同样的问题(【报Bug】我使用阿里云官方提供的金融级实人认证插件AP-FaceDetectModule ,苹果打包会失败),其自己找到的解决方案是:在
manifest.json的模块配置中勾选“实人认证”模块。你可以尝试此方法,看是否能解决冲突。但该用户后续反馈即使在 iOS 18 上也会闪退,说明此方法可能不是一个完美的解决方案。
- 可以尝试参考文档中提到的 这篇文档 的方法,手动移除
总结:这个 Bug 是成立的,问题出在 AP-FaceDetectModule 这个插件的 iOS 库文件上。建议你优先将此错误日志反馈给插件作者,由他们从源头修复。同时,可以尝试在 manifest.json 的“模块配置”中勾选官方的“实人认证”模块,看是否能作为临时解决方案。
