前几个版本,在 YaoYao watch 端加了点 SpriteKit 的动画优化了一下效果,后来被证明是一次失败的负优化。

现象

  • 用户反馈YaoYao HIIT模式下偶尔程序闪退,线上并未收集到 crash Log
  • 闪退的过程是在使用了 10几组 HIIT 的时候(过了一段时间)

调试过程

使用模拟器测试了半天,并没有内存泄露和崩溃。这让人很头疼,我又用真机开始调试,用instrument看前面 30组也并无内存泄露,直到我将手表戴在手上,后来终于出现了奇迹,内存开始涨,最终crash。

SKView: ignoreRenderSyncInLayoutSubviews is NO. Call _renderSynchronouslyForTime without handler
2020-05-14 22:33:13.440151+0800 YaoYao WatchKit Extension[249:11942] Execution of the command buffer was aborted due to an error during execution. Insufficient Permission (to submit GPU work from background) (IOAF code 6)
2020-05-14 22:33:13.440474+0800 YaoYao WatchKit Extension[249:11942] Execution of the command buffer was aborted due to an error during execution. Insufficient Permission (to submit GPU work from background) (IOAF code 6)
2020-05-14 22:33:13.440660+0800 YaoYao WatchKit Extension[249:11942] Execution of the command buffer was aborted due to an error during execution. Insufficient Permission (to submit GPU work from background) (IOAF code 6)
2020-05-14 22:33:13.440806+0800 YaoYao WatchKit Extension[249:11942] Execution of the command buffer was aborted due to an error during execution. Insufficient Permission (to submit GPU work from background) (IOAF code 6)Thread 1: EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=50 MB, unused=0x0)

结论

  1. watchOS 的内存上限,官方文档没有明确说明,事实上在 watchOS6, 我的 watch 4代上表现结果是 50MB
  2. SKView 的这个内存泄露发生在 app 不在frontmost 的时候,手表熄屏后才发生,所以模拟器并未能测试出来
  3. watchOS app 的超内存好像没有crash report,虽然我在真机上重现了,并也并未找到report,所以线上也未能收集到报告。

使用telephonymanager真机调试 闪退_watchOS 上的一次 SKView 内存泄露调试相关推荐

  1. Xamarin Android项目真机测试闪退

    Xamarin Android项目真机测试闪退 项目在模拟器中运行正常,但在真机上闪退.这是由于项目设置使用共享的Mono运行时. Visual Studio中,在项目属性-Android Optio ...

  2. android真机测试什么不同,android真机测试闪退

    1. Android程序真机调试闪退怎么办 应用程序出现闪退,原因如下: 1.应用程序自身漏洞:开发的应用程序代码存在缺陷,造成大多数设备在运行该程序时会出现闪退的情况. 这种情况需要开发者进行解决. ...

  3. Android studio 真机联调闪退

    安卓8.0 26版本时,模拟器运行正常,但是用数据线连接真机调试时会闪退,android studio里面报一个高版本兼容问题, android.view.WindowManagerColorW@b5 ...

  4. VS2017调试闪退之Chrome

    原文:VS2017调试闪退之Chrome 巨硬build后发了15.7.1满载期待的升级了..结果NM泪奔................... 为啥 泪奔? 使用Chrome 调试闪退,MMP ,一 ...

  5. Revit API 2018调试闪退

    我使用vs2015开发,设置启动Revit程序后会闪退,并给出如下错误提示: 程序"[8396] Revit.exe"已退出,返回值为 -529697949 (0xe06d7363 ...

  6. 微信小程序苹果机弹窗闪退原因

    最近使用uni.app开发了一个微信小程序,出现了一些问题,在此记录一下. 功能描述: 底部导航栏有首页.练习.我的三个按钮,在未登录情况下可以浏览首页.另外两个页面会弹出弹窗提示是否去登录,点击是则 ...

  7. 全国计算机二级qq闪退,电脑上QQ闪退怎么回事?各个系统版本电脑QQ闪退现象的解决方法介绍...

    电脑QQ闪退怎么回事?无论你是什么版本的电脑系统,或多或少都会遇到QQ闪退的现象.遇到这种烦人的情况,我们该如何去解决它呢?对于电脑qq闪退怎么回事?如何解决呢?下面脚本之家小白就在本文为大家提供wi ...

  8. android studio 运行闪退,ubuntu上在androidstudio中启动emulator闪退的解决方法

    阅读目录(Content) 平台 现象 解决 一.查看模拟器的信息 二.命令行运行模拟器 平台 Ubuntu14.04 64 现象 在AndrodStudio中点击模拟器的启动按钮后,模拟器界面弹出后 ...

  9. nginx-模块内存泄露调试

    在开发或使用别人模块时,偶尔会出现内存泄露的情况,这个时候在配置文件中配置 worker_processer 1; daemon off; master_process off; 然后使用valgri ...

最新文章

  1. android界面去掉标题栏和状态栏
  2. python smtp模块发送邮件
  3. 一生只见一次的大彗星今天来了!
  4. c++中获取蓝图组件_蓝图C++混合编程
  5. Qt版本中国象棋开发(二)
  6. cadence PCB板级设计
  7. Unity应用架构设计(10)——绕不开的协程和多线程(Part 1)
  8. windows下apache最新下载、安装配置
  9. java朴素贝叶斯_java实现朴素贝叶斯算法
  10. 大学计算机基础教程第9章计算机多媒体技术
  11. [实用代码] 基于CH554电容触摸屏IIC转USB转IIC方案代码分享
  12. After Effects快捷键
  13. 闵梓轩大佬のnoip模拟题D1 总结 2017/10/26
  14. 网易互娱2017实习生招聘在线笔试第一场-题目3
  15. PHP微信固码免签系统源码+带监控APP和教程
  16. INSTALL_FAILED_NO_MATCHING_ABIS 的解决办法
  17. 软件测试学习书籍推荐【乐搏TestPRO】
  18. 【渝粤题库】国家开放大学2021春2099民事诉讼法学题目
  19. 2.1.3如何实现进程的控制、进程控制相关的原语(创建原语、终止、唤醒、阻塞、切换原语)
  20. JWT验证机制【刘新宇】【Django REST framework中使用JWT】

热门文章

  1. 生成技术在人工智能平台中的应用探索
  2. 《大数据》2020年第3期目次摘要
  3. 【2017年第2期】应用驱动的大数据融合平台建设
  4. Tomcat 申请证书配置https
  5. 【程序设计】模块化的注意事项和不良实践
  6. 笨小猴(洛谷P1125题题解,Java语言描述)
  7. 离散数学之集合论 【上】
  8. python 3 一些常用的内置数据结构介绍
  9. UVa 740 - Baudot Data Communication Code
  10. DIV+CSS_1_样式表的分类