打印语句在调试flart中的dart代码时非常有用。有人知道不从发行版的代码中删除它们的含义吗?
最佳答案
作为可能不必要的I / O,print
/ debugPrint
语句可能会影响性能。他们还将向设备日志发送垃圾邮件。
我建议改用 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}');
});
// ...
}
关于flutter - 轻而易举地打印报表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57912270/