我在调试模式下运行我的Android应用程序,其中我将一些常量定义为生成在static final
中的Interface
变量。
当我在Eclipse中处于调试模式时,我将鼠标悬停在这些常量上以查看其内容,我看到null
表示字符串,0.0
表示我的双打。
界面如下所示:
public interface IMyConstants {
public static double DOUBLE_CONST = 4.2235234;
public static String STRING_CONST= "Should be some string";
}
此接口位于类路径中包含的外部非Android项目中。
来自其他引用的Android项目的其他常量似乎在向我提供他们的信息,并且它们以完全相同的方式声明。
我想知道调试器是否很难阅读这些因为项目是非Android的,因为这是我最初可以看到的唯一区别。
在我的断点之前,我确实将常量DOUBLE_CONST的值输出到LogCat,并得到了正确的值。
此:
// Hovering over any of the constants here do not show their true value in debug
double value = myValue / IMyConstants.DOUBLE_CONST;
Log.i("MyProject", "IMyConstants.DOUBLE_CONST: " + IMyConstants.DOUBLE_CONST);
Log.i("MyProject", "IMyConstants.STRING_CONST: " + IMyConstants.STRING_CONST);
/*
* The breakpoint is here..
* hovering over DOUBLE_CONST above shows DOUBLE_CONST = 0.0
* hovering over STRING_CONST above shows STRING_CONST = null
*/
someBreakPointedMethod();
都给:
12-19 23:32:54.316: INFO/MyProject(23806): IMyConstants.DOUBLE_CONST: 4.2235234
12-19 23:32:54.316: INFO/MyProject(23806): IMyConstants.STRING_CONST: Should be some string
为什么调试对象视图(将鼠标悬停在变量上时弹出的视图)不能在这种情况下工作?
答案 0 :(得分:3)
请在你的陈述之后加上你的断点 像这样
断点应该在这里..