Android应用发布清单

时间:2015-10-11 06:51:05

标签: android android-logcat publishing android-log

Android app发布清单说我需要从我的代码中删除所有Log语句。这是否意味着我需要删除它们或者只是将它们注释掉?我稍后会需要这些日志语句进行更新和维护,所以我不想删除它们。Publishing checklist

2 个答案:

答案 0 :(得分:3)

您不必从代码中删除日志,只需在RELEASE模式下停用它们即可。实现这一目标的最简单方法是,在记录某事之前检查模式

 if (BuildConfig.DEBUG) {
    Log.i("TAG", "Log");
 }

但是如果你的代码中有很多日志会很痛苦,所以很好的想法是在Android Log类之上编写自定义包装器,能够在一个地方打开/关闭日志记录,例如在Application class。

或者您可以使用Timber

等智能记录器

修改

关于日志包装器,说实话我从未创建过这样的包装器,我更喜欢使用Timber,但最简单的版本可能看起来像这样

public class Logger {

    public static void e(String tag, String body) {
        if (BuildConfig.DEBUG) {
            Log.e(tag, body);
        }
    }

    public static void v(String tag, String body) {
        if (BuildConfig.DEBUG) {
            Log.v(tag, body);
        }

    }

    ...
}

而不是使用

Log.e("Tag", "Body");

使用

Logger.e("Tag", "Body");

答案 1 :(得分:0)

发布检查清单只是不希望您在发布应用时包含日志语句,因为它可能包含一些敏感信息和那些东西。所以你只需要确保它没有被执行。

只要日志声明没有执行,就可以了。

您可以执行以下操作:

  • 删除声明

  • 评论声明

  • 添加一个不可能的if语句:

    if (0 != 0) {
       //log
    }

P.S。第二种解决方案是最推荐的。