如何检查Flutter应用程序是否在调试模式下运行?
如何检查Flutter应用程序是否在调试模式下运行?
我正在寻找一种在Flutter应用程序处于调试模式时执行代码的方法。在Flutter中是否有这样的功能?我在文档中似乎找不到。
像这样的东西
If(app.inDebugMode) { print("Print only in debug mode"); }
如何检查Flutter应用程序是否在调试或发布模式下运行?
admin 更改状态以发布 2023年5月21日
在以后的版本中,您可以使用kDebugMode
:
if (kDebugMode) doSomething();
虽然断言可以用于手动创建“是否为调试模式”变量,但应避免这样做。
相反,使用来自package:flutter/foundation.dart
的常量kReleaseMode
区别在于摇树优化。
摇树优化(也称编译器删除未使用的代码)取决于变量是常量。
问题在于,使用断言时,我们的isInReleaseMode
布尔值不是常量。因此,在发布应用程序时,开发和发布代码都包含在内。
另一方面,kReleaseMode
是常量。因此,编译器可以正确地删除未使用的代码,我们可以安全地进行操作:
if (kReleaseMode) { } else { // Will be tree-shaked on release builds. }