android - 如何控制用户构建中的详细日志?

标签 android

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

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

谢谢 喜满树

最佳答案

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

看看: 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

关于android - 如何控制用户构建中的详细日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10909873/

相关文章:

java - Android setText 导致崩溃

java - Android Studio : Can't find assets 中的 GDXruntime 异常

Android - 如何通过代码将图像放置在现有布局之上?

android - 为什么我包含的布局标签返回 null?

android - java.lang.IllegalStateException : Expected BEGIN_OBJECT but was STRING at line 1 column 错误

java - 如何将图像放在android中另一个图像上方的中央?

java - Android,即使每个位置的精度检查为 20,位置也会不断变化

android - 如何改变TextInputLayout居中水平的 float 标签位置

android - 当我们使用数据绑定(bind)时如何在ViewPager中刷新recyclerView

java - Android Intent 应用程序崩溃