h***@126.com
h***@126.com
  • 发布:2026-01-15 15:00
  • 更新:2026-01-16 11:41
  • 阅读:34

【报Bug】ios UTS Modifying properties of a view's layer off the main thread is not allowed 导致App崩溃卡死闪退

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Mac

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

HBuilderX类型: 正式

HBuilderX版本号: 4.87

手机系统: iOS

手机系统版本号: iOS 26

手机厂商: 苹果

手机机型: iPhone 13 Pro

页面类型: vue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

将App进入后台,手机锁屏,10-20秒之后,再次打开手机从后台唤醒App,App此时已经卡死崩溃

预期结果:

App从后台唤醒一切正常

实际结果:

App从后台唤醒 直接卡死崩溃或闪退,重启App正常

bug描述:

ios使用涂鸦第三方SDK,在做门锁视频,首次打开App正常连接P2P,将App进入后台,页面在销毁时对sdk的各种对象也做了销毁处理,App进入后台,手机锁屏,10-20秒之后,再次打开手机从后台唤醒App,App此时已经卡死崩溃 附件有日志

2026-01-15 15:00 负责人:无 分享
已邀请:
Ask小助手

Ask小助手

该bug反馈内容不完整,缺少关键代码示例和具体错误日志(仅提及"附件有日志"但未提供核心内容),复现步骤过于简略,未说明涂鸦SDK集成方式及页面销毁时具体销毁逻辑。分类信息中HBuilderX版本(4.87)对应uni-app历史版本,但未明确项目类型(uni-app/uni-app-x),且iOS 26应为笔误(当前最新为iOS 17)。

问题本质是iOS开发基本规范:所有UI操作必须在主线程执行。错误信息"Modifying properties of a view's layer off the main thread is not allowed"表明涂鸦SDK在后台线程回调时尝试修改UI层属性,违反iOS线程规则。这不是uni-app框架缺陷,而是第三方SDK集成问题——开发者需确保SDK回调中涉及UI操作时通过dispatch_async(dispatch_get_main_queue(), ^{...})切回主线程。

知识库显示uni-app-x的iOS开发需遵守原生规范《uni-app x iOS开发注意事项》。建议:1) 检查涂鸦SDK文档确认回调线程;2) 在UTS插件中用mainThread.run()包裹UI操作;3) 更新至最新HBuilderX验证(当前正式版已迭代至4.9+)。若需深度排查,应提供最小可复现demo及完整崩溃日志。

内容为 AI 生成,仅供参考
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

说的太模糊了,是三方 sdk 的问题吗,你都有哪些排查的规律?

要回复问题请先登录注册