如何在用户构建中控制详细日志?

时间:2012-06-06 07:25:38

标签: android

我可以看到LOGV消息是USER构建(在logcat中)。

在用户构建中,通常会禁用详细日志记录吗?或者至少这是我的想法。 我们如何确保我们的LOGV消息显示在userdebug中而不是用户构建中?

由于 人士Himanshu

1 个答案:

答案 0 :(得分:0)

构建您自己的Log类,检测它是否为调试版本,然后将其用于所有日志。

看看: http://developer.android.com/reference/android/content/pm/PackageManager.html#getPackageInfo(java.lang.String,%20int

http://developer.android.com/reference/android/content/pm/PackageInfo.html

http://developer.android.com/reference/android/content/pm/ApplicationInfo.html

它可能看起来像这样:

public void logv(String tag, String message) {

        if(isDebug()) {
            Log.v(tag,message);
        }

        private boolean isDebug() {
            return (0 != (myContext.getPackageManager().getPackageInfo("com.myapp",0).applicationInfo.flags &= ApplicationInfo.FLAG_DEBUGGABLE)); 
        }
    }
}

或使用Log.d而不是Log.v