0

我的 Android 应用程序中有一些代码用于调试,但不想在生产中使用。有没有办法在 Android、Java 中排除生产版本中的一些代码?就像在 C 中定义、ifdef、endif 一样?

我喜欢断言,它可以在 Android 应用程序的运行配置中启用,但是该断言语句需要断言代码返回一个布尔值,所以这对我不起作用。

谢谢!

4

3 回答 3

0

我发布此答案是为了提供信息,这并不是建议实际使用断言副作用来更改代码。

话虽如此...

    boolean debug = false;
    assert debug = true;

    if(debug){
        /* Do debugging stuff */
    }
于 2013-08-01T17:41:27.487 回答
0

Java 中没有原生条件编译。但是,这篇文章详细介绍了一种使用 ANT 和评论的方法,例如//[ifdef]//[enddef]

https://weblogs.java.net/blog/schaefa/archive/2005/01/how_to_do_condi.html

祝你好运!

于 2013-08-01T17:46:38.653 回答
0

还有这个解决方案,它将预处理器指令添加到 Java:

https://www.java.net//forum/topic/java-tools/java-development-tools/wwyt-conditional-compilation-pre-processor

于 2013-08-01T17:52:37.023 回答