Мой код использует assert
экстенсивно.
утверждать, что не работает на android 5.1.1?
После обновления до 5.1.1 (проверено на Nexus 4 & Nexus 5), вызовы утверждения игнорируются. Выбор «отладочного приложения» в разделе «Параметры разработчика» не отличался.
Может кто-нибудь решить эту проблему? (Прежде чем я вынужден заменить все утверждения на некоторые myAssert(..)
).
Update:
вопрос я открыл был закрыт с этим комментарием:
Debug.Assert не был реализован.
Похоже, что этот инструмент не требует большого спроса, бьет меня.
assert
был чрезвычайно мощный инструмент.
Некоторые преимущества:
включается и выключается во время выполнения с помощью:
ADB оболочки setprop Debug.Assert 1 (или 0)
по сравнению с некоторыми
public static myAssert(boolean condition,String message)
- myAssert выполняет/оцениваетmessage
в любом случае, аassert
делает это, только еслиcondition
является ложным. Итак,myAssert(..)
стоит дорого в CPU и памяти, особенно если вам нужны содержательные сообщения, такие какArrays.toString(..)
. И вам нужно будет пропустить любой вызовmyAssert
, если вы выполняете профилирование.
Я открыл для него футляр: https://code.google.com/p/android/issues/detail?id=175697 – auval