assert
в JVM. Но в Андроиде используется виртуальная машина Dalvik или ART, в зависимости от версии ОС, а не стандартная JVM.По-умолчанию
assert
в андроид-приложении не работает. В Dalvik ассерты включаются командой
adb shell setprop debug.assert 1
, но эта настройка ненадежна и не работает на некоторых версиях Андроид. В ART ассерты и вовсе убрали.Если использовать
assert
, то линтер в Android Studio покажет warning и предложит заменить на конструкцию:
if (BuildConfig.DEBUG && !(&jt;assert_condition>)) { throw new AssertionError() }