36 | 如何通过工具链优化开发调试效率?
陈航
该思维导图由 AI 生成,仅供参考
你好,我是陈航。今天我们来聊聊如何调试 Flutter App。
软件开发通常是一个不断迭代、螺旋式上升的过程。在迭代的过程中,我们不可避免地会经常与 Bug 打交道,特别是在多人协作的项目中,我们不仅要修复自己的 Bug,有时还需要帮别人解决 Bug。
而修复 Bug 的过程,不仅能帮我们排除代码中的隐患,也能帮助我们更快地上手项目。因此,掌握好调试这门技能,就显得尤为重要了。
在 Flutter 中,调试代码主要分为输出日志、断点调试和布局调试 3 类。所以,在今天这篇文章中,我将会围绕这 3 个主题为你详细介绍 Flutter 应用的代码调试。
我们先来看看,如何通过输出日志调试应用代码吧。
输出日志
为了便于跟踪和记录应用的运行情况,我们在开发时通常会在一些关键步骤输出日志(Log),即使用 print 函数在控制台打印出相关的上下文信息。通过这些信息,我们可以定位代码中可能出现的问题。
在前面的很多篇文章里,我们都大量使用了 print 函数来输出应用执行过程中的信息。不过,由于涉及 I/O 操作,使用 print 来打印信息会消耗较多的系统资源。同时,这些输出数据很可能会暴露 App 的执行细节,所以我们需要在发布正式版时屏蔽掉这些输出。
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
本文介绍了如何通过工具链优化来提高开发调试效率,重点围绕Flutter应用的代码调试展开。首先介绍了输出日志的重要性,并提出了使用Flutter提供的debugPrint函数来代替print,以实现定制打印的能力,同时通过不同的main文件来表示不同环境下的入口,从而实现不同环境下的打印日志行为。其次,详细介绍了断点调试的方法,包括标记断点、调试应用、查看信息等步骤,并通过实例展示了在Android Studio中进行断点调试的全过程。文章通过具体的操作方法和示例,为读者提供了优化开发调试效率的实用技巧,对于需要提高Flutter应用开发调试效率的开发者具有一定的参考价值。 文章还介绍了Flutter的布局调试能力,包括通过Debug Painting来定义辅助线,以及通过Flutter Inspector这种可视化手段来更为准确地诊断布局问题。通过这些工具,开发者可以更快速地发现界面中的问题,提高开发效率。同时,文章提出了思考题,引导读者思考如何将debugPrint在生产环境下的打印日志行为更改为写日志文件,从而引发读者的思考和讨论。 总的来说,本文通过介绍工具链优化、调试方法和布局调试能力,为读者提供了丰富的实用技巧和思考题,帮助他们提高Flutter应用的开发调试效率。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Flutter 核心技术与实战》,新⼈⾸单¥59
《Flutter 核心技术与实战》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(7)
- 最新
- 精选
- 和小胖老师,我看那个 debugPrint 跟 print 相比是能够打印出来更多的信息,防止在 Android 上面有时候一些信息漏打印。然后对于 debug 或者 release 打印日志的问题,那么是不是也可以提供一个打印日志的类,判断是不是 kDebugMode,是的话打印,不是的话直接 return 呢?
作者回复: 也可以呀,39节里思考题就是类似的思路
2019-10-282 - 哗啦啦请问 陈老师 。性能方面的参数有什么办法调试吗 ? 比如CUP 内存 占用等
作者回复: CPU主要是通过火焰图来看;内存Devtools也有在线工具,可以帮你检查当前的内存分配情况,我们可以重点关注大对象
2019-09-192 - Sen如果是混合开发的话,日志打印的文本的同时还需要和原生工程的日志合起来,可能还是需要用到桥接方法,线上产品经常是需要收集设备日志来排查问题,但是就不知道具体的性能损失了2020-11-30
- 冯选刚这些日志其实还需要保存到本地,在有问题的时候也要捞出来。还有些日志error worn 级别的日志需要扔到线上,便于监控报警。要做的事情还有很多2020-10-25
- Geek_159a45请问老师,在android工程中降flutter作为modlue源码依赖后,怎么做到断点调试flutter的代码呢2020-05-11
- 无名老师,怎么解决print打印日志时日志过长显示不全的问题。2020-05-072
- 许童童感谢老师分享。2019-09-19
收起评论