为什么 Log.d() 和 Log.v() 不打印
Why are Log.d() and Log.v() not printing
我的 Activity 中有以下测试代码:
@Override
public void onStart() {
super.onStart();
Log.e(CLASS_NAME, "ERROR onStart()");
Log.w(CLASS_NAME, "WARN onStart()");
Log.i(CLASS_NAME, "INFO onStart()");
Log.d(CLASS_NAME, "DEBUG onStart()");
Log.v(CLASS_NAME, "VERBOSE onStart()");
在 Android Studio 中的 logcat 视图中,它只打印:
02-10 15:56:10.190 6194-6194/org.example.my_app E/MyActivity﹕ ERROR onStart()
02-10 15:56:10.190 6194-6194/org.example.my_app W/MyActivity﹕ WARN onStart()
02-10 15:56:10.190 6194-6194/org.example.my_app I/MyActivity﹕ INFO onStart()
在框的顶部,菜单设置为Log level: “Verbose”
,如果我进入旁边的菜单,选择“Edit filter configuration”
,“by Log Level”
也设置为“Verbose”
。为什么 Log.d()
和 Log.v()
不打印任何东西?我可能缺少什么?如有任何建议,我们将不胜感激。
Android Studio 会过滤已经记录的行,但Log 本身在记录时可能会过滤一些级别。见 Log.isLoggable:
The default level of any tag is set to INFO
.
(但是在许多 phone 上它实际上设置为 DEBUG
或 VERBOSE
。)
已接受的答案无效
我的解决方案:
when your Log.d
is not working then Log.wtf
is work
它对我有用,可能对找到解决方案的其他人有帮助
我什么都试过了。从 log.d
到 log.wtf
。但是没有任何效果。
然后我重新启动了 Android Studio。之后,调试器又开始工作了。
希望这对某人有所帮助。
关闭您的开发者选项然后重新启动您的Phone之后开发者选项 绝对有效!!
修复魅族phone
Settings -> Accessibility -> Developer options -> advanced
logging->set "Allow all"
魅族MX4(Flyme 6.1.0.0)、M2(Flyme 6.1.0.0G)、M5(Flyme 6.3.0.0G):
Settings->Accessibility - > Developer Options -> Performance
optimization -> Advanced logging -> set "Allow all"
Huawei, logcat not showing the log for my app?
对于其他 phone,在 "developers options" 中搜索:选项 "logging" 并设置 "all"。
对我来说,问题是我实际上在我的开发者设置中禁用了记录器缓冲区,所以转到设置 -> 开发者选项 -> 记录器缓冲区大小并将其设置为 'off' 以外的任何值。
我在 Android Studio 3 中开始发生这种情况。我的 Log.v 印刷品变旧了,但是当我添加新的印刷品时,什么也没有发生。与调试器断点同上。
清理解决方案并重新启动 Android Studio 对我有用,但还有一个更简单的解决方案。
。 Instant 运行 似乎无法识别新的 Log.v 或断点。
同时,我还为主要 activity 添加了 Gradle-aware Make 到我的 Run/Debug 配置中。我不知道那是否有必要,但我保留了它。 ([Main Menu] Run -> Edit Configurations...
)
我也遇到过同样的问题。即使按照前面的答案,我也没有找到在 Logcat.
中显示日志的方法
经过我自己的多次尝试,这里是显示日志的(其他)方法:
只需在组合框中选择 "Show only selected application"
即可。之前选择的是"Firebase"
。
希望您能看到自己的日志 ;-)
我遇到了与此类似的问题。但是在我的例子中,问题是第一个字符串是空的。它在旧版本的 Android Studio 中工作,但在更新后停止在 Android Studio ver 5.6 中工作。
当我使用:
Log.d(string1, string2);
在我的日志包装器 class 中,
那么只要 string1 是 "",logcat 就会忽略它。解决方案是添加
if(string1 == null || string1 == "") {
string1 = "defaultString";
}
之前
Log.d(string1, string2);
我希望这可以帮助任何人解决这个问题。
我遇到了同样的问题。我关闭并打开开发人员选项和 USB 调试,所有日志都有效。我还在开发人员选项中启用了 gpu 调试层(我认为这没有帮助)。
我的 Activity 中有以下测试代码:
@Override
public void onStart() {
super.onStart();
Log.e(CLASS_NAME, "ERROR onStart()");
Log.w(CLASS_NAME, "WARN onStart()");
Log.i(CLASS_NAME, "INFO onStart()");
Log.d(CLASS_NAME, "DEBUG onStart()");
Log.v(CLASS_NAME, "VERBOSE onStart()");
在 Android Studio 中的 logcat 视图中,它只打印:
02-10 15:56:10.190 6194-6194/org.example.my_app E/MyActivity﹕ ERROR onStart()
02-10 15:56:10.190 6194-6194/org.example.my_app W/MyActivity﹕ WARN onStart()
02-10 15:56:10.190 6194-6194/org.example.my_app I/MyActivity﹕ INFO onStart()
在框的顶部,菜单设置为Log level: “Verbose”
,如果我进入旁边的菜单,选择“Edit filter configuration”
,“by Log Level”
也设置为“Verbose”
。为什么 Log.d()
和 Log.v()
不打印任何东西?我可能缺少什么?如有任何建议,我们将不胜感激。
Android Studio 会过滤已经记录的行,但Log 本身在记录时可能会过滤一些级别。见 Log.isLoggable:
The default level of any tag is set to
INFO
.
(但是在许多 phone 上它实际上设置为 DEBUG
或 VERBOSE
。)
已接受的答案无效
我的解决方案:
when your
Log.d
is not working thenLog.wtf
is work
它对我有用,可能对找到解决方案的其他人有帮助
我什么都试过了。从 log.d
到 log.wtf
。但是没有任何效果。
然后我重新启动了 Android Studio。之后,调试器又开始工作了。
希望这对某人有所帮助。
关闭您的开发者选项然后重新启动您的Phone之后开发者选项 绝对有效!!
修复魅族phone
Settings -> Accessibility -> Developer options -> advanced logging->set "Allow all"
魅族MX4(Flyme 6.1.0.0)、M2(Flyme 6.1.0.0G)、M5(Flyme 6.3.0.0G):
Settings->Accessibility - > Developer Options -> Performance optimization -> Advanced logging -> set "Allow all"
Huawei, logcat not showing the log for my app?
对于其他 phone,在 "developers options" 中搜索:选项 "logging" 并设置 "all"。
对我来说,问题是我实际上在我的开发者设置中禁用了记录器缓冲区,所以转到设置 -> 开发者选项 -> 记录器缓冲区大小并将其设置为 'off' 以外的任何值。
我在 Android Studio 3 中开始发生这种情况。我的 Log.v 印刷品变旧了,但是当我添加新的印刷品时,什么也没有发生。与调试器断点同上。
清理解决方案并重新启动 Android Studio 对我有用,但还有一个更简单的解决方案。
同时,我还为主要 activity 添加了 Gradle-aware Make 到我的 Run/Debug 配置中。我不知道那是否有必要,但我保留了它。 ([Main Menu] Run -> Edit Configurations...
)
我也遇到过同样的问题。即使按照前面的答案,我也没有找到在 Logcat.
中显示日志的方法经过我自己的多次尝试,这里是显示日志的(其他)方法:
只需在组合框中选择 "Show only selected application"
即可。之前选择的是"Firebase"
。
希望您能看到自己的日志 ;-)
我遇到了与此类似的问题。但是在我的例子中,问题是第一个字符串是空的。它在旧版本的 Android Studio 中工作,但在更新后停止在 Android Studio ver 5.6 中工作。
当我使用:
Log.d(string1, string2);
在我的日志包装器 class 中,
那么只要 string1 是 "",logcat 就会忽略它。解决方案是添加
if(string1 == null || string1 == "") {
string1 = "defaultString";
}
之前
Log.d(string1, string2);
我希望这可以帮助任何人解决这个问题。
我遇到了同样的问题。我关闭并打开开发人员选项和 USB 调试,所有日志都有效。我还在开发人员选项中启用了 gpu 调试层(我认为这没有帮助)。