断言不在Android 5.1.1上工作?

时间:2015-06-03 10:19:51

标签: android assert android-5.1.1-lollipop

我的代码广泛使用assert次调用。

更新到5.1.1(在Nexus 4& Nexus 5上测试)后,断言调用被忽略。在Developer options下选择“debug app”没有任何区别。

有没有人解决这个问题? (在我被迫用一些myAssert(..)替换所有断言之前。)

更新
我打开的问题已经以此评论结束:

  

debug.assert从未实现。

看来对这个工具的需求不大,打败了我。
assert 是一个非常强大的工具。


一些优点:

  1. 使用以下命令在运行时启用和禁用

    adb shell setprop debug.assert 1(或0)

  2. 与某些public static myAssert(boolean condition,String message)进行比较 - myAssert在任何情况下都会执行/评估message,而assert仅在condition为false时执行。所以myAssert(..)在cpu和内存中很昂贵,特别是如果你需要有意义的消息,比如Arrays.toString(..)。如果您正在进行分析,则需要跳过任何myAssert来电。

1 个答案:

答案 0 :(得分:0)

谷歌表示assert从未得到官方支持,现在它甚至都不存在 RIP。