【发布时间】:2015-01-01 20:34:38
【问题描述】:
这可能是一件很挑剔的事情,但在 Xamarin 中运行 Android 应用程序时,它会在控制台中转储大量以 [Mono] 开头的行
有没有办法禁用这些日志?
提前致谢
【问题讨论】:
标签: android logging mono console xamarin
这可能是一件很挑剔的事情,但在 Xamarin 中运行 Android 应用程序时,它会在控制台中转储大量以 [Mono] 开头的行
有没有办法禁用这些日志?
提前致谢
【问题讨论】:
标签: android logging mono console xamarin
这可以通过改变设备上Monos执行环境的状态来实现;这只是一组改变 Monos 行为的环境变量(垃圾收集、日志记录等)。在这种情况下,要更改日志记录行为,我们需要修改存储在环境变量 MONO_LOG_LEVEL 和 MONO_LOG_MASK 中的值。
Xamarin.Android 提供了 2 种机制开发人员可以用来更改执行环境:
adb shell setprop debug.mono.env。这可以作为构建后操作来完成。我更喜欢使用方法 2,因为编辑文本文件比更改构建操作更容易。使用下面列出的步骤执行此操作。
将名为 environment.txt 的纯文本文件添加到 Xamarin.Android 项目的根路径。
右击environment.txt并将其构建操作设置为AndroidEnvironment。
环境文件是由换行符分隔的一系列 key=value 对。对于日志记录,我们可以设置以下变量:
MONO_LOG_LEVEL
MONO_LOG_MASK
例如,我们可以通过错误过滤MONO_LOG_LEVEL来忽略大多数消息:
environment.txt
MONO_LOG_LEVEL=error
背景阅读:
【讨论】:
MONO_GC_PARAMS=bridge-implementation=## 来试验不同的算法。