3

Android 应用程序提交说,在提交之前删除任何日志记录。关于这个有几个问题

  1. 是否System.out.println被视为日志记录?如何在整个应用程序中禁用它而不必将其删除
  2. 在清单中尝试过android:debuggable="false",但 Eclipse 说“避免对调试模式进行硬编码;将其排除在外允许调试和发布版本自动分配一个”
  3. 我有一些第三方 jar 文件在我测试我的应用程序时显示 Log 语句。考虑到我没有来源,我该如何删除它们。

建议高度赞赏。

4

1 回答 1

2

我确定您已经遇到了这样一个事实,即您可以使用 if(GLOBAL_VALUE) 技巧,因为您的日志已经存在!

因此,我的建议是使用 Proguard;http://developer.android.com/tools/help/proguard.html

以下 proguard.cfg 块指示删除 Log.d 调用。

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

您可以根据您放在那里的值对其他调用(如 Log.i、Log.e 等)执行此操作!

至于你的 Jar,如果它引用了 Android Log 系统,ProGuard 应该负责处理。

于 2012-10-14T09:00:39.140 回答