flutter开发ios17出现name = 'io.flutter.1.raster', stop reason = signal SIGABRT崩溃的解决方法

1. 问题描述

  • 为了适应ios上架要求,我们项目升级了flutter升级到3.19.6的,但是莫名其妙出现了这个崩溃,最关键的是没有关键的崩溃日志,不管是flutter侧还是ios原生侧都看不出哪行代码引起的

2. 问题排查

  • 首先,通过崩溃日志的关键字'io.flutter.1.raster',其实的raster就是光栅化的意思,懂点opengl知识的都知道,光栅化就是和ui相关的
  • 再加上因为我们的项目出现的情况就是只有那一个页面有问题,所以我们使用二分排除法。。
  • 先注掉页面部分内容,看看是否崩溃,然后一步步缩小范围
  • 最后确定了是RoundSliderThumbShape组件的问题,具体就是这段代码的const RoundSliderThumbShape(enabledThumbRadius: 0)的enabledThumbRadius为0导致的

3. 解决问题

  • 知道了哪段代码导致的问题,解决起来就好办了。enabledThumbRadius为0导致的,估计了内部有除法操作导致的除0异常??
  • 不能使用0又不想让它出现,那就是给它足够小0.001吧,最后改为const RoundSliderThumbShape(enabledThumbRadius: 0.001) 解决了问题。在此记录一下方便后续查找,其他类似问题也可以类似这样解决。
posted @   yongfengnice  阅读(113)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2023-05-14 Mac系统重新安装Homebrew解决方法
2019-05-14 android实现以activity方式的dialog对话框
点击右上角即可分享
微信分享提示