我正在编写 Android 应用程序,这里最好的方法可能与 Java 相同,也可能不同。
我只是希望能够设置一个调试标志,该标志仅在设置为 true 时执行代码的某些部分——相当于 C++ 设置预处理器#define DEBUG 并使用#ifdef DEBUG。
在 Java 中是否有公认的或最好的方法来实现这一点?
现在我只想在我的 Application 对象中设置一个变量,但我认为这不是最好的方法。
最佳答案
您可以使用 ADT 自动设置的标志,而不是使用自己的标志,如下所示:
final static int appFlags = context.getApplicationInfo().flags;
final static boolean isDebug = (appFlags & ApplicationInfo.FLAG_DEBUGGABLE) != 0
FLAG_DEBUGGABLE
位会自动设置为 true 或 false,具体取决于应用程序的“可调试”属性(在 AndroidManifest.xml 中设置)。最新版本的 ADT(版本 8)在不导出签名包时会自动为您设置此属性。
因此,您不必记住设置/重置自己的自定义标志。
您可以在 this thread 中阅读更多信息.
关于java - 包含调试代码的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2718565/