如何在android中为app添加秘密日志记录功能

时间:2012-01-10 06:01:01

标签: android logging

我想添加一个秘密的日志切换开关,以便当QA人员在这里测试应用程序时,他们应该能够做一些神奇的秘密技巧,这将打开他们手机上的日志记录。

魔术秘密技巧意味着点击屏幕的某些部分应该打开它或你建议的其他东西。这个秘密只有QA团队才知道,这不应该以任何其他方式影响应用程序。

我打算在SD卡上的文件中记录这些语句。

你有什么想法?最好的方法是什么?

通常的做法是什么?

4 个答案:

答案 0 :(得分:3)

通过登录为QA构建,将其关闭以进行生产。避免魔术。

答案 1 :(得分:2)

一种非常简单的方法是检查SD卡上是否存在文件(空的,无关紧要)。您可以使文件名动态(基于日期/月份)或非常模糊。

答案 2 :(得分:0)

您可以选择不隐藏功能,只需放置一个启用日志记录的按钮(例如在您的约会栏中)。然后,如果您在客户现场遇到问题,那么您很难再现,那么您也可以让客户向您发送日志。

否则我还建议在SD卡上检查一些魔术文件(例如app-xyz-enable-log),如果存在,你会自动开始登录到该SD卡。在运行您的应用程序之前,您的所有QA人员都会在其SD卡上创建一个空文件。

答案 3 :(得分:0)

执行此操作的常规方法(除了具有单独的构建之外)是使用标准的Android日志记录。您可以教您的QA人员提取LogCat日志或为他们构建一个小脚本。然后在您登录时,请确保仅记录必要的级别。例如:

private static String LOG_TAG = "MyLogTag";
private static boolean D = Log.isLoggable(LOG_TAG, Log.DEBUG);

...

if (D) {
    Log.d(LOG_TAG, "Something happened that I want to log!");
}

然后通常该语句不会记录,但是如果你想打开它,你可以运行:

adb shell setprop log.tag.MyLogTag DEBUG