Logcat没有显示我的日志调用

时间:2010-11-19 19:28:58

标签: android debugging logging android-logcat

我是Android编程的总菜鸟,想学习如何调试我的应用程序。我似乎无法在LogCat中显示我的Log.i | d | v调用。

这是我正在使用的代码。正如您所看到的,我已经定义了一个LOG_TAG常量,但似乎无法在LogCat中找到它。我还导入了android.util.Log并确保在我的AndroidManifest中将“debuggable”设置为TRUE。

我还检查了http://developer.android.com/reference/android/util/Log.html没有解决这个问题的运气。

我做错了什么?我甚至在正确的地方寻找?我已经尝试过使用DDMS和Debug透视图,但没有运气。任何帮助这个菜鸟将不胜感激。感谢。

我的环境: Windows XP IDE = Eclipse版本:3.6.1,构建ID:M20100909-0800 模拟器=指向android sdk 2.1 api 7

//非常基本的HELLO World代码,带有几个Log.i调用

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;

public class debugger extends Activity {
    private static final String LOG_TAG = "debugger";

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        Log.i(LOG_TAG, "line 13");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        Log.i(LOG_TAG, "CREATING NOW");
    }
}

31 个答案:

答案 0 :(得分:144)

使用Eclipse时,在DDMS透视图中,确保选择并突出显示正确的设备(可能是emulator-xxxx)。只有这样你才能在logcat视图中获得logcat输出。

此外,Android插件有点奇怪,有时只显示logcat视图中的最后一行。如果发生这种情况,请尝试清除日志。之后,您应该再次获取所有日志条目(无论如何都适合我)。

答案 1 :(得分:71)

如果一切都失败了:

我做了以上所有事情,无法弄清楚出了什么问题,

测试:

adb logcat

要弄清楚我的条目在logcat中是不可思议的,但是这是一个怪癖。

<强>修正:

  

重启eclipse

这是解决它的唯一问题。

答案 2 :(得分:11)

我使用Android Studio遇到了同样的问题,并通过在LogCat右上角的选择框中选择No Filters来设法解决问题。通过这样做,我开始在后台接收所有Android日志到LogCat,包括我丢失的日志调用。

enter image description here

答案 3 :(得分:9)

重启Eclipse并检查日志cat是否会显示。

答案 4 :(得分:6)

我发现我自动导入 com.sileria.Log (来自某个库项目)而不是 android.util.Log ,后者是正确的。检查你的进口。

答案 5 :(得分:4)

我需要使用命令adb usb

重新启动adb服务

在此之前,我获得了所有日志记录并且能够进行调试,但是没有获得我自己的日志行(是的,我正在获取与我的应用程序关联的系统日志记录)。

答案 6 :(得分:3)

最简单的方法:

签入您的logcat窗口 - TOP RIGHT corner PAUSE按钮|| (暂停接收新的logcat消息)

很少点击+最终重启eclipse(通常适用于我的情况)

答案 7 :(得分:3)

我注意到Eclipse有时会在启动Android应用程序时抛出异常,然后LogCat会停止更新。我已经通过简单地重启Eclipse来纠正了这个问题。我不确定你是否尝试过,我知道它远非一个最佳解决方案,但我怀疑Eclipse插件仍有一些错误可以解决。

答案 8 :(得分:2)

在Android Studio上: 单击指向右侧的绿色箭头以重新开始记录;如果看不到,请点击&gt;&gt;找到它的图标。

答案 9 :(得分:2)

您可能看不到日志的原因有很多,其中大部分都列在下面。以下是检查大多数原因的一些步骤:

  1. 确保您没有&#39; android:debuggable =&#34; false&#34;&#39;在你的 的AndroidManifest.xml
  2. 确保您的logcat没有暂停,并确保滚动到底部
  3. 您的过滤器应该是“没有过滤器”和“过滤器”。或者您当前的应用
  4. 您在logcat设备列表中选择了正确的设备
  5. 如果您未收到任何消息,请尝试重新启动adb。您可以通过点击重启&#39;从Android Studio执行此操作。图标,它就在logcat的打印图标后面,它看起来像是一个从盒子里出来的绿色弯曲箭头。如果您没有看到它,请将鼠标悬停在&#39;&gt;&gt;&#39;当logcat太小时,它会继续显示图标菜单。

答案 10 :(得分:1)

还有一件事要注意:

在logcat的右上角有一个下拉列表,用于按类型过滤消息。确保它在你正在寻找的级别上(如果它在断言级别,它可能会使你的logcat空了)。

答案 11 :(得分:1)

我也是Android-Eclipse的新手。以下是我在Eclipse中显示LogCat消息所需的内容: 1:将其添加到调用logcat消息的类中: private static final String TAG =“MyActivity”; (根据文档here

2:添加此Log.i(TAG,“inLayout - finished”);当你想要显示消息的地方时

如果以上操作不起作用,请关闭Eclipse并重新启动它并重新运行项目。

它应该有用。

答案 12 :(得分:1)

可能它不正确,但有点长,但是我用这个解决了这个问题(Android Studio):

System.out.println("Some text here");

像这样:

try {
       ...code here...
} catch(Exception e) {
  System.out.println("Error desc: " + e.getMessage());
}

答案 13 :(得分:1)

请转到任务管理器并终止adb.exe进程。再次重启你的日食。

尝试 adb kill-server ,然后 adb start-server 命令。

答案 14 :(得分:1)

QUICK FIX。

重新启动eclipse

作品完美。

答案 15 :(得分:1)

我花了几个小时来处理这种情况。我只看到触摸键日志。而已。问题是......智能手机。重启后就OK了。断开电缆导致问题返回。不得不重新启动它。 看起来Android USB通信设计得不好。

答案 16 :(得分:0)

升级到Android 3.6.1后,我多次遇到此问题。 在我看来,唯一有效的方法是重新启动设备。

答案 17 :(得分:0)

其他答案都没有对我有用,但确实如此:

我从我的工作区中删除了我的项目,然后从项目文件夹中删除了以点(.settings,.project等)开头的任何内容。然后我重新导入了预测。我错过了一些设置和断点,但至少它有效。

答案 18 :(得分:0)

在我的情况下,我只需要为String添加一个名称。在第一个例子中,我只是在括号之间有一个空格

private static final String TAG = " ";

但在添加名称后,它完美无缺。

private static final String TAG = "oncreate";

答案 19 :(得分:0)

我有这个问题并修复了,没有空格的String TAG:

“我的标签”//注意显示
“my_tag”//没关系

答案 20 :(得分:0)

有时问题不是来自PC,另一方面来自IDE,ADB等问题,但来自你的设备,它不会向ADB发送日志,所以如果你尝试了之前提到的所有方法仍然你的logcat是空的尝试重新启动你的设备并再试一次。我尝试了上面提到的所有方法并且它们都没有工作但是在我的手机上重启后logcat像魔术一样工作

答案 21 :(得分:0)

让你的app强制关闭一次 这将再次启动LogCat ......

将此用于强制关闭:D

plot = np.clip(plot, 40, 250)

答案 22 :(得分:0)

我还使用“adb usb”重新启动了ADB服务,并为我解决了这个问题。事实上,我的活动中只有一个没有记录。所有其他人都记录了东西。重新启动adb后,一切都像魅力一样。对于正在寻找其他解决方案的其他人:adb kill-server,CLI中的adb start-server通常会解决您的问题。

答案 23 :(得分:0)

对于日食: 1)转到ddms观点。 2)确保选择了正确的设备。 3)如果已选择且未显示日志,则重新启动ABD。 *希望这会解决。

答案 24 :(得分:0)

使用SDK 4.0.3,您必须在调试配置&gt;上明确选择它。项目&gt;目标或者它永远不会使用Eclipse Indigo(3.7)显示。当然会发生日食重启。

答案 25 :(得分:0)

对我来说,最佳解决方案是重启adb服务器(我在 Android工作室中启用了ADB集成 - 工具 - Android - 已选中)。为了快速完成这项工作,我在adbr.bat目录中创建了android-sdk\platform-tools文件(位于adb.exe所在的位置),其中包含以下内容:

adb kill-server
adb start-server

因为我在PATH系统变量中有这个文件夹,所以当我需要从Android工作室重新启动adb时,我只能写入终端adbr并完成。

执行此操作的另一个选项是通过设备标签中的 Android设备监视器 - 点击右侧的小箭头后菜单 - 重置adb

答案 26 :(得分:0)

在我的情况下,我不得不删除这一行:

    <application
         android:debuggable="false"  <!-- Remove this line -->
         ..../>

从我的清单文件中的Application标记。

答案 27 :(得分:0)

我在logcat中看到简单的日志输出时遇到了问题。我安装了最新的JDK后问题解决了。我只是设置了一台新的开发机器,只安装了JRE并安装了JDK。

答案 28 :(得分:0)

我错误地在logcat搜索框中输入了一个搜索词。 我忘了删除它,因此无法看到新的日志。由于它们与我的搜索字词不匹配而未显示。

答案 29 :(得分:0)

我遇到了这个问题,直到我将日志调用移动到处理程序中似乎没有任何工作。无论你身在何处,它现在每次都有效。

答案 30 :(得分:-3)

您正在尝试将“运行代码”放在工作空间上..所以请尝试将代码放在运行代码上。