gpt4 book ai didi

android - 我应该在发布之前从我的代码中删除 e.printStackTrace()

转载 作者:IT王子 更新时间:2023-10-29 00:02:14 25 4
gpt4 key购买 nike

我正在阅读 Android Publishing 文档,他们说要从我的代码中删除所有 Log 调用。我的代码中有一些对 e.printStackTrace() 的调用,可以作为程序正常运行的一部分打印出来(即,如果文件尚不存在)。

我也应该删除这些调用吗?

最佳答案

无论如何,您都不应该直接使用 e.printStackTrace() - 这样做会将信息发送到 Android 日志,而不会显示它来自哪个应用程序(日志标记)。

正如其他人所提到的,继续捕获有问题的 Exception,但使用 android.util.Log 方法之一进行日志记录。您可以只记录消息,而不记录堆栈跟踪,或者对堆栈跟踪使用详细日志记录:

try {
Object foo = null;
foo.toString();
} catch (NullPointerException ex) {
Log.w(LOG_TAG, "Foo didn't work: "+ ex.getMessage());
Log.d(LOG_TAG, Util.stackTraceWriter(ex));
}

您应该从生产版本中去除 DEBUGVERBOSE 日志消息。最简单的方法是use ProGuard to remove Log.[dv] calls来自您的代码。

关于android - 我应该在发布之前从我的代码中删除 e.printStackTrace(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2072148/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com