颤动地打印语句

时间:2019-09-12 18:02:35

标签: flutter dart

打印语句在调试flart中的dart代码时非常有用。有人知道不从发行版本的代码中删除它们的含义吗?

1 个答案:

答案 0 :(得分:0)

print / debugPrint语句可能会不必要地影响I / O的性能。他们还将向设备日志发送垃圾邮件。

我建议改用package:logging之类的东西。这样,您可以提供一个使用debugPrint的回调,但可以调整您的日志记录级别,以根据严重性轻松地启用或禁用消息(并可以在调试版本中启用其他日志记录)。

package:logging文档提供了一个示例,但对其进行了一些微调,以使调试和发行版之间的日志记录级别有所不同:

import 'package:logging' as log;

void main() {
  // Log everything in debug builds.  Log warnings (and up) in release builds.
  log.Logger.root.level = kDebugMode ? log.Level.ALL : log.Level.WARNING;
  log.Logger.root.onRecord.listen((log.LogRecord rec) {
    print('${rec.level.name}: ${rec.time}: ${rec.message}');
  });

  // ...
}