Jim*_*mmy 7 android android-sdk-2.1 android-logcat
我准备在市场上发布应用程序,在阅读此处的Google文档时,它建议如下:Deactivate any calls to Log methods in the source code.
有没有比通过我的所有源文件并手动删除每一行更简单的方法?
另外,为什么要删除日志记录,这是资源占用吗?
你可以通过proguard来做到这一点.在最新的SDK和工具中,应该已经存在proguard配置文件.克里斯托弗在回答这个类似的问题.
最简单的方法可能是在部署之前通过ProGuard运行已编译的JAR,其配置如下:
-assumenosideeffects class android.util.Log {
public static int v(...);
}
Run Code Online (Sandbox Code Playgroud)
除了所有其他ProGuard优化之外,这将直接从字节码中删除任何详细的日志语句.
您可以通过添加来决定要禁用哪些logoutput
-assumenosideeffects class android.util.Log {
public static int d(...);
public static int i(...);
public static int e(...);
}
Run Code Online (Sandbox Code Playgroud)
到proguard配置文件也是如此.我喜欢在我的代码中保留.e消息,因为这些仅用于某些catch部分,希望在正常执行应用程序期间降低性能.