华为,logcat没有显示我的应用程序的日志吗?


163

好的,logcat正在显示系统日志,但未在我的华为Ascend上显示应用程序日志。如果我切换到其他设备(例如Galaxy Nexus或Nexus 7),则会显示同一应用的日志(甚至是相同的APK)。

Huawei Ascend运行Android 4.1.1,在开发人员选项中已打开USB调试。从命令行或IntelliJ运行logcat时会发生这种情况。而且我要确保选择了正确的设备-实际上,我一次只能插入一个设备。我试图重新启动adb,清除它的缓冲区等

我可以看到该应用程序已在华为上启动,我什至收到系统日志,显示该活动已启动。但是与其他设备不同,我在Activity#onCreate中(或从其他任何地方)都没有应用日志。

08-08 20:55:44.050: INFO/WindowManager(431): Switching to real app window: Window{41ae8780 au.com.xandar.wirelesstiming.timekeeper/au.com.xandar.wirelesstiming.timekeeper.TimeKeeperActivity paused=false}
08-08 20:55:44.180: INFO/ActivityManager(431): Displayed au.com.xandar.wirelesstiming.timekeeper/.TimeKeeperActivity: +387ms

如何无法交付应用程序日志?


也许您已在LogCat输出中应用了某个过滤器-请检查一下。
13年


@CamilStaps,因为此问题特定于华为手机。
威廉

这并不重要,关键是它已经在其他地方得到了回答。

@CamilStaps这个问题在其他地方没有得到回答。与其他人相比,它帮助了许多人。
威廉

Answers:


469

好的,因为我有另一个Huawei Ascend,所以我遇到了同样的问题。这次我有确切的答案。请按照以下说明进行操作(来自denispyr关于“ 为什么logcat无法在我的Android中显示任何内容?”的回答 )

拨号

*#*#2846579#*#*

您将看到一个隐藏的菜单。转到项目菜单>后台设置>日志设置,然后定义日志可用性(日志开关)和级别(日志级别设置)。

然后确保您重新启动手机。

请注意,这可能仅适用于华为手机。

还要注意,如果您使用的是华为平板电脑(例如MediaPad M3),则无需拨号即可启动风景计算器并输入()()2846579()()


29

适用于Android 8.0+的华为

我们必须拨打代码: *#*#2846579#*#*

并选择“ AP日志 ”选项就足以在LogCat中显示消息。

图像描述入门


12

如果任何拥有上述Letv Phone(LeEco Le Max 2或1)解决方案的人都无法使用。请尝试以下USSD。参考图1。

Press Dialer *#*#76937#*#*

选择“启用所有日志”

图。1


华为ECO手机上不起作用。有小费吗?模型编号:LUA-L23
charlesfranciscodev

@charlesfranciscodev您是否尝试过#*#2846579#*#。如以上答案中所述
nitesh

谢谢。使用LeECO x527
Aleksey_M

5

我放弃。

Log.d(TAG, msg);

试试这个。

Log.wtf(TAG, msg);

为我工作。


谢谢您在华为ECO手机上为我工作!
charlesfranciscodev

Log.wtf()被设计为完全出乎意料的状态。这类似于SEVERE。肯定不是DEBUG
威廉

1
Xd我认为Log.e()/ Log.w()/ Log.i()的工作也非常好。
Fortran

3

我有HUAWEI Y3 II又名LUA-L21

接受的答案并没有为我工作。它导致出现一些MTKLogger设置屏幕,该屏幕与答案中描述的屏幕不同,并且完全没有帮助。

我的解决方案

  1. 拨号*#*#2846580#*#*(请注意,此代码与接受的答案中的代码不同)
  2. 您刚刚进入了一个名为EngineerMode的设置屏幕(同样,与接受的答案的ProjectMenu不同
  3. 在第一个“ 电话”选项卡中,单击“ 日志控制”
  4. 激活两个开关(设置 Mtklog控件捕获所有日志,并设置adb无线电日志通过adb捕获无线电日志
  5. 返回上一个屏幕,滑动至“ 日志和调试”选项卡
  6. 打开调试实用程序
  7. 更改 调试级别用户模式工程师模式
  8. 采取适当措施,重新启动手机

屏风

更改日志控制

在此处输入图片说明 在此处输入图片说明

更改调试工具

在此处输入图片说明 在此处输入图片说明

补充笔记

只是为了澄清我的原始问题;logcat正在显示我的应用程序的某些日志条目,而不是我自己的消息 -我看到的条目属于我的进程com.example.myapp,但是我从来没有在自己的代码中使用Log.d("TAG", "hello world");

有很多这样的东西:

4260-4270/com.example.myapp I/art: Debugger is no longer active
4260-4412/com.example.myapp I/System.out: [CDS]rx timeout:1
4260-4412/com.example.myapp D/NativeCrypto: doing handshake ++
4260-4603/com.example.myapp D/OpenGLRenderer: Flushing caches (mode 0)
4260-4603/com.example.myapp D/Surface:  Surface::disconnect(this=0xb85285d8,api=1)
4260-4260/com.example.myapp D/ActivityThread: ACT-STOP_ACTIVITY_HIDE handled : 0 / android.os.BinderProxy@2333cbdf

...但是从来没有像这样的东西:

4260-4603/com.example.myapp D/MainActivity: hello from onCreate!

上面的步骤为我解决了这个问题。


对于华为CRO-L22和其他一些具有MTK的华为,其工程师模式为#*#14789632#*#
Dmytro Turkov,

1
Open your Dialer app and enter the following code: *#*#2846579#*#*.

    1-Enter the Background Settings page.
    2-Click on Log Settings
    3-Check all 3 options to enable full logging.
    4-Ignore the "will affect performance" warning.
    5-Reboot the phone.

1

华为电话的某些较新版本(我正在使用Y9s 2019)已更改了一些设置。

现在是过程

拨打*#*#2846579#*#*

后台设置-> AP日志设置->打开。

如果仍然看不到日志,请重新启动手机和Android Studio / Eclipse


0

尝试在设备本身上下载Logcat应用程序(例如aLogCat),看看是否有同样的问题。我知道它不是一个完整的解决方案,但是通过这种方式,您可以通过阅读应用程序日志来找出问题所在。


1
这不适用于4.xx及更高版本的系统日志,仅适用于READ_LOGS权限设置为-code.google.com/p/alogcat/issues/detail?id=41的具体应用程序日志。
g00dy

-3

试试这个:

在Eclipse编辑器中:

从Windows->设备重置ADB,然后重试...

请检查您的项目以绿色突出显示(只需选择项目名称)


1
就像我在上面说的,我从命令行或IntelliJ使用logcat。我不使用Eclipse。第二,正如我在上面也说过的,我已经尝试过重置adb(多次)。
威廉
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.