Ответ 1
Булевы литералы внутри класса BuildConfig
собираются выпустить предупреждения IDE при их использовании в вашем коде (по крайней мере, в Android Studio). Например, при использовании в булевом выражении Android Studio (ошибочно) рекомендует упростить логическое выражение, потому что постоянное значение всегда одно и то же (для текущего варианта сборки, который есть).
Это предупреждение происходит только потому, что Android Studio не знает, что конечное значение внутри BuildConfig.SOME_SETTING
может отличаться для других вариантов сборки.
Чтобы код был чистым и без предупреждений, вы можете сказать Android Studio игнорировать это конкретное предупреждение, добавив комментарий IDE следующим образом:
Но опять-таки это добавит некоторый шум в код и уменьшит читаемость. Используя метод Boolean.parseBoolean(String)
для инициализации вашего постоянного поля, вы фактически обходите Android Studio, которая больше не сможет полностью анализировать ваши булевы выражения, тем самым не генерируя предупреждений больше.
Этот подход очень полезен, поскольку он сохраняет ваш код в чистоте и читабельности, не отключая важный анализ кода и генерируя предупреждения.