Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException
вообще.
См. также: A хороший список лучших практик
Я бы добавил, очень важно, хорошо использовать модификатор final
. Использование "окончательной" модификатор, когда это применимо в Java
Сводка:
final
для обеспечения хорошей инициализации. @NotNull
и @Nullable
if("knownObject".equals(unknownObject)
valueOf()
поверх toString (). StringUtils
StringUtils.isEmpty(null)
. minSdkVersion - это то, что управляет старыми версиями здесь.
Измените значение
minSdkVersion 23
на 21, если хотите, чтобы ваше приложение поддерживало устройства вплоть до версии с леденцом на палочке. Обычно в наши дни разработчики используют minSdkVersion 21. Если вы получаете какую-либо ошибку, вы можете легко ее исправить.
Надеюсь, что это даст вам правильное руководство.
Вы случайно не определили отдельный файл ресурсов (рисование, макет) для старых версий Android? Ваша трассировка стека говорит о том, что она не может накачать кнопку из-за отсутствия прорисовки.
minSdkVersion 23
установите более низкую версию, например minSdkVersion 19
, и проверьте в своем коде версию, если она ниже 23 реализует другой сценарий или отключите такую функцию, как:
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
// implement your logic here
} else {
// implement another scenario or disable this feature
}
Activity.LoginActivity}: android.view.InflateException: строка двоичного файла XML № 57: строка двоичного файла XML № 57: ошибка надувания класса Button
Причина: android.content.res. Ресурсы $ NotFoundException: Ресурс "com.example.ananduamenon.a2z_final: drawable / button_background" (7f07005e) не является Drawable
blockquote>Я думаю, вам нужно прочитать трассировка стека ошибок ближе. Как я вижу, вы использовали некоторые button_background , которые неудовлетворительно раздували свойство (drawable / color). Я рекомендую вам проверить файл button_background.xml и выяснить, что вы пишете неправильно.