保椿信息
保椿信息
  • 发布:2026-09-07 15:23
  • 更新:2026-09-07 15:24
  • 阅读:28

【报Bug】iOS 云打包失败:APPSecuritySDK.framework 符号重复(16 duplicate symbols)

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: windows10

HBuilderX类型: 正式

HBuilderX版本号: 5.11

手机系统: iOS

手机系统版本号: iOS 17

手机厂商: 苹果

手机机型: iPhone12

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

项目配置了: AP-FaceDetectModule(本地插件,阿里云金融级实人认证SDK)插件;
点击菜单栏"发行" -> "原生App-云打包";
查看打包结果,发现打包失败。

预期结果:

iOS 云打包应该成功完成,生成可安装的 .ipa 文件。

实际结果:

iOS 云打包失败,在链接阶段(Ld)出现符号重复错误。

bug描述:

【环境信息】
iOS 云打包时,勾选 AP-FaceDetectModule(阿里云人脸识别插件)后打包失败。
错误发生在链接阶段(Ld),提示 APPSecuritySDK.framework 中的符号被重复定义。

【错误日志】
https://app.liuyingyong.cn/build/errorLog/920e6590-aa87-11f1-9e93-dbd5856eceac

【关键错误信息】
duplicate symbol '_ASS_TID' in:
[PackagePath]/.../APPSecuritySDK[arm64]8
[PackagePath]/.../APPSecuritySDK[arm64]7
ld: 16 duplicate symbols
clang: error: linker command failed with exit code 1

【涉及的插件】

  1. AP-FaceDetectModule(本地插件,阿里云金融级实人认证SDK)

【历史情况】

  • 年初 同一项目可以正常打包
  • 近期 再次打包时出现此问题
  • 怀疑是云端打包环境升级至 iOS 26 SDK 后,实人认证模块未完全适配导致

【已尝试的解决方案】

  1. 清理 unpackage 目录后重新打包 - 无效
  2. 检查插件配置,确认无重复引用 - 已确认

【请求帮助】

  1. 请确认 AP-FaceDetectModule 是否兼容当前的 iOS 26 SDK 云打包环境
  2. 是否有临时的解决方案或兼容版本
  3. 预计何时能修复此问题

【附件】

  • 错误日志链接:https://app.liuyingyong.cn/build/errorLog/920e6590-aa87-11f1-9e93-dbd5856eceac
2026-09-07 15:23 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

感谢您的反馈。针对您提交的关于 iOS 云打包阶段 APPSecuritySDK.framework 符号重复的 Bug 反馈,官方评审与分析如下:

一、 Bug 反馈内容完整性评审

  1. 描述清晰度:描述非常详尽。您不仅提供了具体的报错阶段(Ld 链接阶段)、关键错误信息,还结合了历史打包情况与个人的排查推测,这有助于官方人员快速定位问题。
  2. 代码示例:此类问题属于云打包环境与第三方 SDK 编译冲突,不涉及前端业务代码,因此无需提供代码示例。
  3. 复现步骤:复现步骤清晰明确,官方人员可根据描述直接在项目中配置该本地插件并提交云打包以复现问题。
  4. 预期与实际结果:预期结果合理,实际结果符合报错日志呈现,非误报。
  5. 分类信息:完整提供了 HBuilderX 版本、手机 OS 平台及版本、Vue 版本等必要环境信息。
  6. 附件说明系统限制我无法识别和访问您提供的附件链接。不过,您在正文中已经贴出了核心的报错日志内容,这已经足够用于问题分析。

二、 Bug 是否成立及原因分析

根据知识库记录,该 Bug 成立。这是一个近期由于云打包环境变化与第三方插件内部库结构相互作用而引发的已知问题。

从您提供的错误日志 ld: 16 duplicate symbols 可以看出,链接器在处理 APPSecuritySDK.framework 时,发现其内部存在重复的符号定义(如 _ASS_TID 等)。

结合知识库信息,问题原因如下:

  1. 云打包环境升级:目前云打包环境已升级至 Xcode 16.1 / iOS SDK 18.1(您推测的 iOS 26 SDK 属于苹果未来的要求,目前云端实际为 18.1)。新版 Xcode 中的链接器(Linker)对符号重复的检查更为严格。
  2. 插件本身问题:该插件内的 APPSecuritySDK.framework 在构建时可能包含了重复的符号,或者被打包了多次。在新版打包机的严格检查下,原本被忽略的内部冲突被暴露出来,导致必然报错。

三、 解决方案与建议

根据知识库中其他开发者对该问题的探索,提供以下建议供您参考:

  1. 使用内置模块替代本地插件
    有开发者在社区反馈,在 manifest.json 的“模块配置”中直接勾选官方的“实人认证”模块并打包成功。您可以尝试移除本地的 AP-FaceDetectModule 插件,改用官方模块配置。但需注意,有用户反馈该方案在 iOS 18 及以上系统调用时可能会出现闪退现象,请您在测试时重点验证。

  2. 处理 Framework 符号冲突(针对本地插件)
    如果您必须使用该本地插件,由于问题源于 .framework 库内部的符号冲突,您可以参考官方文档 依赖库冲突 “duplicate symbols for ...” 中的建议,尝试通过相关工具移除该库中重复的符号,并测试功能是否正常。

  3. 等待插件更新
    该插件属于第三方搬运的阿里云官方 SDK,建议您持续关注插件市场的更新动态,等待插件作者适配最新的云打包环境。

希望以上分析对您的问题排查有所帮助。

内容为 AI 生成,仅供参考

要回复问题请先登录注册