我想在我的 android 程序中查看任何变量(String var)值。您可以说用于调试目的。
当我使用 System.out.print("Hello") 打印任何内容时,我无法在任何地方找到此输出。
有谁知道在哪里可以找到这个输出。
这是我的代码-
package com.test1.nus;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
System.out.print("Hello");
....
}
Run Code Online (Sandbox Code Playgroud)
默认情况下,Android 系统将stdout( System.out) 输出重定向到/dev/null,这意味着您的消息会丢失。
相反,在 Android 中记录调试字符串的常见模式如下
import android.util.Log;
Run Code Online (Sandbox Code Playgroud)
然后在班级中名列前茅YourClass
private static final String TAG = YourClass.class.getSimpleName();
Run Code Online (Sandbox Code Playgroud)
要记录调试字符串,您需要调用
Log.d(TAG, "your debug text here");
Run Code Online (Sandbox Code Playgroud)
在你的情况下会导致
package com.test1.nus;
import android.util.Log;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
public class MainActivity extends Activity {
private static final String TAG = MainActivity.class.getSimpleName();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.d(TAG, "Hello");
....
}
Run Code Online (Sandbox Code Playgroud)
最后你可以通过以下方式在 Eclipse 中看到你的调试字符串
Windows > Show view > Other并选择LogCat
如果需要,可以通过 标签进行过滤YourClass。
但是,如果您确实需要查看由System.out.println您编写的消息,则需要告诉 Android 通过以下 shell 命令将它们路由到 logcat
$ adb shell stop
$ adb shell setprop log.redirect-stdio true
$ adb shell start
Run Code Online (Sandbox Code Playgroud)
然后您将能够通过 LogCat 视图和标记在 Eclipse 中查看调试消息stdout。
您可以从此处的官方文档获取更多详细信息http://developer.android.com/tools/debugging/debugging-log.html
| 归档时间: |
|
| 查看次数: |
9152 次 |
| 最近记录: |