为每个适配器调用禁用logcat中的日志

时间:2016-06-08 14:31:42

标签: ibm-mobilefirst

我在MobileFirst 7.0中构建了一个混合应用程序,我在logcat中看到,对于每个适配器调用,都有一个级别为' D'并标记“无”'或者' WLNativeXHR' created,包含服务器响应。我不希望创建这些日志。

我试图把

WL.Logger.config({'level': 'fatal'});

在wlInitOptions(initOptions.js文件)中,但这种行为似乎没有改变。

如何关闭客户端日志记录到Logcat(以及iOS相同)或至少更改日志记录级别,以便设备中不记录适配器请求/响应?

1 个答案:

答案 0 :(得分:1)

将MobileFirst升级到最新版本可能会有所帮助。我们有几个APAR,我们已经更改了我们记录的信息。我们继续记录适配器调用,但我们不再记录适配器响应。

对于Android,另一种选择是研究使用Progaurd。 ProGuard已集成到Android构建系统中,因此您无需手动调用它。只有在发布模式下构建应用程序时,ProGuard才会运行,因此在调试模式下构建应用程序时,不必处理混淆代码。

运行ProGuard是完全可选的,但强烈推荐。 (来自Android Developer文档: http://developer.android.com/tools/help/proguard.html

MobileFirst包含一个progaurd项目,您需要在该项目文件(progaurd-project.txt)中添加:

-assumenosideeffects class android.util.Log {
  public static *** d(...);
}

有关记录(http://proguard.sourceforge.net/manual/examples.html#logging

的信息,请参阅Progaurd文档

在project.properties中确保这是不常见的: progaurd.config = progaurd-project.txt

iOS您不应该在生产版本中看到任何日志。在MobileFirst iOS Framework代码中,有一个宏变量设置用于检查生产标志何时启用。如果生成标志已启用,则它将不会打印任何MobileFirst日志。