android - 看不到调试日志 - 华为 P10
问题描述
我遇到了一个奇怪的问题。我开始研究一个已经开发的应用程序。在正常开发过程中,我像往常一样添加了一些日志,但在 logcat 中看不到它们
代码没什么特别的:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_homepage);
Log.v("MYDEV", "oncreate");
presenter.start();
}
所以我可以看到应用程序中的所有其他日志,但我的线路中的日志除外。调试器停止在线,所以它被执行。它发生在不同的地方,不仅仅是这个。我尝试重新启动 Android Studio、logcat 和手机,卸载应用程序等......没有任何效果。
任何想法?
编辑:尝试过System.out.println()
,它正在工作。现在将使用它,但它不是同一件事 EDIT2:正如稍后发现并由答案建议的那样,我的华为 P10 默认情况下不启用调试和详细日志级别,日志从信息级别及更高级别工作。可以从开发人员选项中启用详细日志,但没有调试级别选项
解决方案
搜索了一下发现华为禁用了调试和详细日志级别,为了启用它你可以试试这个:
拨号*#*#2846579#*#*
选择项目菜单>后台设置>日志设置并定义日志可用性(日志开关)和级别(日志级别设置)。
如果这不起作用,您会在这里找到更多选项华为,logcat 不显示我的应用程序的日志? 取决于您的版本/手机
由于这在某些设备上也不起作用,关于 SO Can't enable DEBUG & VERBOSE for Huawei Android Logcat 的另一个问题建议将 Android 日志框架更改为 Timber 库,并在评论中提供了一篇关于如何这样做的博客文章。
还有另一种可能的方法,即System.out.println();
按照@jack_the_beast的建议使用评论中的问题所有者;
推荐阅读
- mongodb - 成功完成后,Mongodb shell 命令未返回准确的“deletedCount”?
- python - 如何让 SublimeText 使用命令行加载 DLL 加载良好的位置
- javascript - .then() 似乎没有等待前一个 .then()
- ios - 将 3D 对象与 estametedVerticalPlane 检测到的垂直平面平行对齐
- tesseract - pytesseract 可以使用 ChoiceIterator 搜索多个匹配项吗?
- mysql - Mysql 选择符合给定条件的所有行以及与所选行具有相同 ID 的其他行
- asp.net-core-signalr - SignalR 核心 InvokeAsync 冻结
- java - 如何使用子弹 HeightfieldTerrainShape
- c++ - 继承所有模板类型功能
- ios - 在反应原生组件类中找不到方法